ACTOR "Chainsaw Gun" : Weapon
{
	Weapon.Selectionorder 650
	+INVENTORY.UNDROPPABLE
	Weapon.PreferredSkin "Minigun-Marine"
	Weapon.KickBack 50
	Weapon.AmmoUse 1
	Weapon.AmmoGive 30
	Weapon.AmmoType "BulletMag"
	Inventory.PickupMessage "Chainsaw Gun"
	Inventory.PickupSound "weapons/minigunpickup"
	Obituary "%o was mowed down or massacred by %k's Chainsaw Gun."
	States
	{
	Ready:
                CCHR A 0 A_PlayWeaponSound("weapons/minigunpickup")
                CCHR FEDCBA 2
                CCHA A 1 A_WeaponReady
		goto Ready+7
	Deselect:
		TNT1 A 0 A_TakeInventory("HandGrenadeAction",1)
		TNT1 A 0 A_TakeInventory("MineAction",1)
		TNT1 A 0 A_TakeInventory("RailgunAction",1)
		TNT1 A 0 A_PlayWeaponSound("weapons/weapondown")
		CCHA A 1 A_Lower
		Goto Deselect+1
	Select:
		CCHA A 1 A_Lower
		Loop
        Spin:
                CCHS ABAB 2 
                goto Ready+7
	Fire:
				TNT1 A 0 A_PlaySound("weapons/mgunspin")
				TNT1 A 0 A_PlaySound("weapons/chaifire",CHAN_WEAPON)
				TNT1 A 0 A_GunFlash
				TNT1 A 0 A_Light1
				CCHA A 0 Radius_Quake(3,2,0,5,0)
				TNT1 A 0 A_SpawnItemEx("RifleCasing",25,-8,25,Random(2,4),Random(-3,-6),Random(3,6),0)
				TNT1 A 0 A_FireCustomMissile("Tracer",Random(4,-4),0,0,Random(4,-4))
				CCHA B 2 Bright A_FireBullets(4.3,2.6,-1,Random(7,10),"CSGunBulletPuff")
				TNT1 A 0 A_JumpIfNoAmmo("EmptySpinDown")
				CCHA BC 1 A_Light0
				TNT1 A 0 A_PlaySound("weapons/chaifire",CHAN_WEAPON)
				TNT1 A 0 A_GunFlash
				TNT1 A 0 A_Light1
				CCHA A 0 Radius_Quake(3,2,0,5,0)
				TNT1 A 0 A_SpawnItemEx("RifleCasing",25,-8,25,Random(2,4),Random(-3,-6),Random(3,6),0)
				TNT1 A 0 A_FireCustomMissile("Tracer",Random(4,-4),0,0,Random(4,-4))
				CCHA C 2 Bright A_FireBullets(4.3,2.6,-1,Random(7,10),"CSGunBulletPuff")
				TNT1 A 0 A_JumpIfNoAmmo("EmptySpinDown")
				CCHA CD 1 A_Light0
				TNT1 A 0 A_PlaySound("weapons/chaifire",CHAN_WEAPON)
				TNT1 A 0 A_GunFlash
				TNT1 A 0 A_Light1
				CCHA A 0 Radius_Quake(3,2,0,5,0)
				TNT1 A 0 A_SpawnItemEx("RifleCasing",25,-8,25,Random(2,4),Random(-3,-6),Random(3,6),0)
				TNT1 A 0 A_FireCustomMissile("Tracer",Random(4,-4),0,0,Random(4,-4))
                CCHA D 2 Bright A_FireBullets(4.3,2.6,-1,Random(7,10),"CSGunBulletPuff")
				TNT1 A 0 A_JumpIfNoAmmo("EmptySpinDown")
				CCHA DB 1 A_Light0
                CCHA A 1 A_Refire
				TNT1 A 0 A_PlaySound("weapons/mgunspinstop")
				CCHA A 1
                goto Spin
       AltFire:
				TNT1 A 0 Radius_Quake(1,2,0,1,0)
                CCHA AE 2 A_Saw("weapons/sawfull","weapons/sawhit",Random(2,4),"SawScreech")
                CCHA A 2 A_Refire
				CCHA A 2 A_StopSound
				CCHA EA 1
                goto Ready+7
	   EmptySpinDown:
				TNT1 A 0 A_PlaySound("weapons/mgunspinstop")
				CCHA A 1
				Goto Spin
	Spawn:
		SCCC A -1
		Stop
	}
}

Actor CSGunBulletPuff : ModdedBulletPuff
{
+THRUSPECIES
Damage 20
Species "Player"
DamageType "None"
}