////WEAPONS////

///Micro-Uzi///
actor MicroUzi : Weapon 3074
{
  obituary "%o was peppered by %k's micro-uzi."
  radius 20
  height 16
  attacksound "MicroUzi/Fire"
  inventory.pickupmessage "You got the micro-uzi!"
  weapon.kickback 100
  weapon.ammotype "Clip"
  weapon.ammouse 1
  weapon.ammogive 40
  Decal "BulletChip"
  Weapon.SlotNumber 2
  Scale 0.75
  states
  {
  Ready:
    MUZI A 1 A_WeaponReady
    loop
  Deselect: 
    MUZI A 1 A_Lower
    loop
  Select:
    MUZI A 1 A_Raise
    loop
  Fire:
    MUZI B 1 bright A_FireBullets (6, 4, -1, 4, "BulletPuff")
    MUZI A 0 A_GunFlash
    MUZI A 2
    CHGG B 0 A_ReFire
    goto Ready
  Flash:
    TNT1 A 2 bright A_Light1
    TNT1 A 2 bright A_Light2
    TNT1 A 0 bright A_Light0
    stop
  Spawn:
    MUZP A -1
    stop
  }
}

///StreetCleaner
ACTOR StreetCleaner : Weapon 3075
{
    Weapon.SelectionOrder 600
	Weapon.AmmoType "Shell" 
	Weapon.AmmoGive 8
	Weapon.AmmoUse 1
	Inventory.PickupSound "misc/w_pkup" 
	Inventory.PickupMessage "Picked up a streetcleaner!"
	Obituary "%o was torn apart by %k's streetcleaner."
	AttackSound "StreetClean/StreetCleanerFire" 
	Weapon.UpSound "weapons/StreetcleanerSelect"
	Weapon.SlotNumber 4
    Decal WarzoneBullet
	States 
	{ 
	Spawn: 
		MGU1 A -1 
		Loop 
	Ready:
		CHG1 A 0 A_JumpIfInventory("D0gSelection",1,"BigD0g")
	    CHG1 A 0 A_JumpIfInventory("TommySelection",1,"Tommy")
		CHG1 A 1 A_WeaponReady 
		Loop
	BigD0g:
        CHG1 A 0 A_JumpIfInventory("Taunting",1,"Taunt")
        CHG1 A 1 A_WeaponReady
        Loop
    Tommy:
        CHG1 A 0 A_JumpIfInventory("GrenadeToss",1,"ThrowGrenade")
        CHG1 A 1 A_WeaponReady
        Loop
	Deselect: 
	    CHG1 A 0 A_Lower
		CHG1 A 1 A_Lower 
		Loop 
	Select: 
	    CHG1 A 0 A_Raise
		CHG1 A 1 A_Raise 
		Loop 
	Fire: 
		CHG1 A 0 A_GunFlash
		CHGG AA 0 A_FireCustomMissile("GunFireSmoke", 0, 0, 0, 0)
        CHGG A 0 A_FireCustomMissile("ShotCaseSpawn2",0,0,-8,-8)
		CHG1 A 6 A_FireBullets(5, 5, 6, 9, "BulletPuff", 1)
		CHGG BB 0 A_FireCustomMissile("GunFireSmoke", 0, 0, 0, 0)
        CHGG B 0 A_FireCustomMissile("ShotCaseSpawn2",0,0,-8,-8)
		CHG1 B 6 A_FireBullets(5, 5, 6, 9, "BulletPuff", 1)
		CHG1 B 1 A_ReFire
		goto Ready
	Flash: 
		CHF1 A 7 BRIGHT A_Light1 
		CHF1 B 7 BRIGHT A_Light0
		Stop
	Taunt:
        TNT1 A 5
	    FUCK A 2
	    TNT1 A 0 BRIGHT A_FireCustomMissile("Taunter", 0, 0, -1, 0)
	    TNT1 A 0 BRIGHT A_FireCustomMissile("Taunter", -9, 0, -1, 0)
	    TNT1 A 0 BRIGHT A_FireCustomMissile("Taunter", 9, 0, -1, 0)
        FUCK B 2 A_PlaySound("D0g/Hardcore", 1)
        FUCK C 2 A_AlertMonsters
	    FUCK D 15 A_Takeinventory("Taunting",1)
        FUCK CBA 5
        TNT1 A 5
	    Goto Ready
    ThrowGrenade:
	    TNT1 A 0
	    TNT1 A 0 A_TakeInventory("GrenadeToss",1)
	    TNT1 A 0 A_JumpIfInventory("GrenadeAmmo",1,1)
	    Goto Ready
        TNT1 A 1
	    TOSS ABCCD 1
	    TNT1 A 0 
	    TOSD D 1 A_PlaySound("GPIN",0)
	    TOSS EF 1 
	    TNT1 A 8 
	    TOSS G 1 A_PlaySound("GTOSS",0)
	    TNT1 A 0 A_Takeinventory("GrenadeAmmo",1)
	    TNT1 A 0 
	    TOSS H 1 A_FireCustomMissile("johnnybomb",0,false,7,3,true,3)
	    TNT1 A 0 A_TakeInventory("GrenadeToss",1)
	    TOSS IJKL 1 
	    Goto Ready
	} 
}
///Flamethrower
Actor Flamethrower2 : Weapon 3091
{
  Inventory.PickupSound "Flamethrower/PickUp"
  Inventory.PickupMessage "Buuuu uuuhuuuu you got the flamethrower urp"
  Obituary "%o was BBQed by %k's flamethrower."
  Weapon.UpSound "weapons/FlamethrowerSelect"
  Weapon.SelectionOrder 180
  Weapon.SlotNumber 6
  Weapon.AmmoType "Cell"
  Weapon.AmmoGive 48
  Weapon.AmmoUse 1
  +Weapon.Explosive
  States
  {
  Spawn:
    WFLM A -1
    Loop
  Ready:
    FLMG B 0 A_JumpIfInventory("D0gSelection",1,"BigD0g")
	FLMG B 0 A_JumpIfInventory("TommySelection",1,"Tommy")
    FLMG BCD 3 A_WeaponReady
    Loop
  BigD0g:
    FLMG B 0 A_JumpIfInventory("Taunting",1,"Taunt")
	FLMG BCD 3 A_WeaponReady
	Loop
  Tommy:
    FLMG B 0 A_JumpIfInventory("GrenadeToss",1,"ThrowGrenade")
	FLMG BCD 3 A_WeaponReady
	Loop
  Deselect:
    FLMG A 0 A_Lower
    FLMG A 1 A_Lower
    Loop
  Select:
    FLMG A 0 A_Raise
    FLMG A 1 A_Raise
    Loop
  Fire:
    FLMG E 0 bright A_GunFlash
	FLMG E 1 bright A_FireCustomMissile("FTFire", 0, 1, Random(-4, 4), 0)
    FLMG F 1 bright A_FireCustomMissile("FTFire", 0, 0, Random(-4, 4), 0)
    FLMG G 1 bright A_FireCustomMissile("FTFire", 0, 1, Random(-4, 4), 0)
    FLMG E 0 bright A_GunFlash
	FLMG E 1 bright A_FireCustomMissile("FTFire", 0, 1, Random(-4, 4), 0)
    FLMG F 1 bright A_FireCustomMissile("FTFire", 0, 0, Random(-4, 4), 0)
    FLMG G 1 bright A_FireCustomMissile("FTFire", 0, 1, Random(-4, 4), 0)
    FLMG E 0 bright A_GunFlash
	FLMG E 1 bright A_FireCustomMissile("FTFire", 0, 1, Random(-4, 4), 0)
    FLMG F 1 bright A_FireCustomMissile("FTFire", 0, 0, Random(-4, 4), 0)
    FLMG G 1 bright A_FireCustomMissile("FTFire", 0, 1, Random(-4, 4), 0)
    FLMG H 2 bright A_ReFire
	FLMG HHH 0 A_FireCustomMissile("GunFireSmoke", 0, 0, 0, 4)
    Goto Ready
  Flash:
    TNT1 A 2 A_Light1
    TNT1 A 2 A_Light2
    TNT1 A 1 A_Light1
    TNT1 A 1 A_Light0
    Stop
  Taunt:
    TNT1 A 5
	FUCK A 2
	TNT1 A 0 BRIGHT A_FireCustomMissile("Taunter", 0, 0, -1, 0)
	TNT1 A 0 BRIGHT A_FireCustomMissile("Taunter", -9, 0, -1, 0)
    TNT1 A 0 BRIGHT A_FireCustomMissile("Taunter", 9, 0, -1, 0)
    FUCK B 2 A_PlaySound("D0g/Hardcore", 1)
    FUCK C 2 A_AlertMonsters
	FUCK D 15 A_Takeinventory("Taunting",1)
    FUCK CBA 5
    TNT1 A 5
	Goto Ready
  ThrowGrenade:
	TNT1 A 0
	TNT1 A 0 A_TakeInventory("GrenadeToss",1)
	TNT1 A 0 A_JumpIfInventory("GrenadeAmmo",1,1)
	Goto Ready
    TNT1 A 1
	TOSS ABCCD 1
	TNT1 A 0 
	TOSD D 1 A_PlaySound("GPIN",0)
	TOSS EF 1 
    TNT1 A 8 
	TOSS G 1 A_PlaySound("GTOSS",0)
	TNT1 A 0 A_Takeinventory("GrenadeAmmo",1)
    TNT1 A 0 
	TOSS H 1 A_FireCustomMissile("johnnybomb",0,false,7,3,true,3)
	TNT1 A 0 A_TakeInventory("GrenadeToss",1)
	TOSS IJKL 1 
	Goto Ready
  }
}
///Flame of Said Flamethrower
Actor FTFire
{
  Radius 2
  Height 4
  Speed 16
  Damage 1
  Projectile
  RenderStyle Add
  DamageType Fire
  Alpha 0.67
  Scale 0.67
  SeeSound "Flamethrower/Fire"
  DeathSound "Flamethrower/Hit"
  Decal DoomImpScorch
  +DONTSPLASH
  States
  {
  Spawn:
    TNT1 A 2
    FEFX ABCD 2 bright A_Explode(5, 8, 0)
    TNT1 A 0 A_LowGravity
    FEFX EFG 2 bright A_Explode(5, 16, 0)
    FEFX HIJ 2 bright A_Explode(5, 32, 0)
    FEFX KLM 2 bright A_Explode(5, 64, 0)
    FEFX NO 2 bright
    Stop
  Death:
    FEFX HIJ 2 bright A_Explode(5, 32, 0)
    TNT1 A 0 A_CustomMissile("DropFire", 0, 0, 0, 4)
    FEFX KLM 2 bright A_Explode(5, 64, 0)
    FEFX NO 2 bright
    Stop
  }
}
///Double-Bladed Chainsaw
Actor DoubleBladedChainsaw : Weapon 3102
{
  Weapon.Kickback 0
  Weapon.SelectionOrder 2100
  Inventory.PickupSound "DoubleBladedChainsaw/PickUp"
  Weapon.UpSound "DoubleBladedChainsaw/SawUp"
  Weapon.ReadySound "DoubleBladedChainsaw/SawIdle"
  Inventory.PickupMessage "AWWWWWW YESHHH DA CHAINSAWWWWWWUGH"
  Obituary "%o was mowed twice-over by %k's chainsaw."
  Weapon.SlotNumber 1
  Decal ChainsawMark
  +WEAPON.MELEEWEAPON
  States
  {
  Ready:
    SAW2 C 0 A_JumpIfInventory("D0gSelection",1,"BigD0g")
	SAW2 C 0 A_JumpIfInventory("TommySelection",1,"Tommy")
	SAW2 C 0 A_PlaySound("DoubleBladedChainsaw/SawIdle", 1)
	SAW2 C 0 A_FireCustomMissile("SmokeSpawner",0,0,0,5)
	SAW2 CD 4 A_WeaponReady
    Loop
  BigD0g:
    SAW2 C 0 A_PlaySound("weapons/sawidle", 1)
	SAW2 C 0 A_JumpIfInventory("Taunting",1,"Taunt")
	SAW2 C 0 A_FireCustomMissile("SmokeSpawner",0,0,0,5)
    SAW2 CD 4 A_WeaponReady
    Loop
  Tommy:
    SAW2 C 0 A_PlaySound("weapons/sawidle", 1)
	SAW2 C 0 A_JumpIfInventory("GrenadeToss",1,"ThrowGrenade")
	SAW2 C 0 A_FireCustomMissile("SmokeSpawner",0,0,0,5)
    SAW2 CD 4 A_WeaponReady
    Loop
  Deselect:
    SAW2 C 0 A_Lower
    SAW2 C 1 A_Lower
    Loop
  Select:
    SAW2 C 0 A_Raise
    SAW2 C 1 A_Raise
    Loop
  Fire:
    SAW2 AABB 2 A_Saw("DoubleBladedChainsaw/Fire", "weapons/sawhit", 0, "ChainsawPuff")
    SAW2 B 0 A_ReFire
    Goto Ready
  Taunt:
    TNT1 A 5
	FUCK A 2
	TNT1 A 0 BRIGHT A_FireCustomMissile("Taunter", 0, 0, -1, 0)
    TNT1 A 0 BRIGHT A_FireCustomMissile("Taunter", -9, 0, -1, 0)
	TNT1 A 0 BRIGHT A_FireCustomMissile("Taunter", 9, 0, -1, 0)
    FUCK B 2 A_PlaySound("D0g/Hardcore", 1)
    FUCK C 2 A_AlertMonsters
	FUCK D 15 A_Takeinventory("Taunting",1)
    FUCK CBA 5
    TNT1 A 5
	Goto Ready
  ThrowGrenade:
	TNT1 A 0
	TNT1 A 0 A_TakeInventory("GrenadeToss",1)
	TNT1 A 0 A_JumpIfInventory("GrenadeAmmo",1,1)
	Goto Ready
    TNT1 A 1
	TOSS ABCCD 1
	TNT1 A 0 
	TOSD D 1 A_PlaySound("GPIN",0)
	TOSS EF 1 
	TNT1 A 8 
	TOSS G 1 A_PlaySound("GTOSS",0)
	TNT1 A 0 A_Takeinventory("GrenadeAmmo",1)
	TNT1 A 0 
	TOSS H 1 A_FireCustomMissile("johnnybomb",0,false,7,3,true,3)
	TNT1 A 0 A_TakeInventory("GrenadeToss",1)
	TOSS IJKL 1 
	Goto Ready
  Spawn:
    2SAW A -1
    Stop
  }
}