Actor Spin: Inventory
{
inventory.maxamount 1
}

// --------------------------------------------------------------------------
//
// Minigun
//
// --------------------------------------------------------------------------

ACTOR Mini_Gun : Chaingun Replaces Chaingun
{
Game Doom
SpawnID 28
Weapon.SelectionOrder 700
Weapon.AmmoType "Clip"
Weapon.AmmoGive 30
Weapon.AmmoUse 1
    +WEAPON.NOAUTOAIM
Inventory.PickupSound "CBOXPKUP"
Inventory.PickupMessage "You got the Minigun!"
Obituary "%o was mowed down by %k's Minigun."
//AttackSound "weapons/minigunfire"
AttackSound "none"
States
{
Steady:
	TNT1 A 1
	Goto Ready
Ready:
      CHGS ABCD 1 A_JumpIfInventory("GoFatality", 1, "Steady")
      TNT1 A 0 A_PlaySound("CHGNPKUP")
      TNT1 AAAAAAAAAAA 0
      TNT1 A 0 A_JumpIfInventory("Kicking",1,"DoKick")
	  		TNT1 A 0 A_JumpIfInventory("Salute1", 1, "Salute")
		TNT1 A 0 A_JumpIfInventory("Salute2", 1, "Salute")
        TNT1 A 0 A_JumpIfInventory("Taunting",1,"Taunt")
      CHAG A 2 A_WeaponReady
              TNT1 A 0 A_JumpIfInventory("Spin",1,"Ready2")
      Goto Ready+13

Ready2:
      TNT1 A 0 A_JumpIfInventory("Kicking",1,"DoKick")
      TNT1 A 0 A_JumpIfInventory("Taunting",1,"Taunt")
      CHAG ABCD 1 A_WeaponReady
      TNT1 A 0 A_PlaySound("CHAINSPI")
      Loop

	Deselect:
     TNT1 A 0 A_TakeInventory ("Spin",1)
     TNT1 A 0 SetPlayerProperty(0,0,0)
        //CHGS DCBA 1
		TNT1 A 1 A_Lower
		Wait

    Select:
	TNT1 A 0 A_Takeinventory("FistsSelected",1)
	TNT1 A 0 A_Takeinventory("SawSelected",1)
	TNT1 A 0 A_Takeinventory("ShotgunSelected",1)
	TNT1 A 0 A_Takeinventory("SSGSelected",1)
	TNT1 A 0 A_Giveinventory("MinigunSelected",1)
	TNT1 A 0 A_Takeinventory("PlasmaGunSelected",1)
	TNT1 A 0 A_Takeinventory("RocketLauncherSelected",1)
    TNT1 A 0 A_Takeinventory("GrenadeLauncherSelected",1)
	TNT1 A 0 A_Takeinventory("BFGSelected",1)
	TNT1 A 0 A_Takeinventory("BFG10kSelected",1)
	TNT1 A 0 A_Takeinventory("RailGunSelected",1)
	TNT1 A 0 A_Takeinventory("SubMachineGunSelected",1)
	TNT1 A 0 A_Takeinventory("RevenantLauncherSelected",1)
	TNT1 A 0 A_Takeinventory("LostSoulSelected",1)
	TNT1 A 0 A_Takeinventory("FlameCannonSelected",1)
	TNT1 A 0 A_Takeinventory("HasBarrel",1)
	
    TNT1 A 0 A_Raise
    Wait

    NoAmmo:
        MNGG A 10 A_PlaySound("weapons/empty")
        Goto Ready+13

	Fire:
	    TNT1 A 0
		TNT1 A 0 A_JumpIfInventory("Spin",1,"Fire2")
		TNT1 A 0 A_PlaySound("CHAINSTA")
		TNT1 A 0 BRIGHT A_FireCustomMissile("Alerter", 0, 0, 0, 0)
		CHAG BC 2
		CHAG D 1
        TNT1 A 0
    Hold:
		TNT1 A 0 A_JumpIfInventory("Salute1", 1, "Salute")
		TNT1 A 0 A_JumpIfInventory("Salute2", 1, "Salute")
		TNT1 A 0 A_JumpIfInventory("Spin",1,"Fire2")
		
        TNT1 A 0 A_PlaySound("weapons/minigunfire")
        TNT1 A 0 A_Recoil(0.1)
		
		
		//TNT1 A 0 A_CustomMissile ("Rocket", 0, 0, 15, 2)
		
		
		
		TNT1 A 0 A_FireCustomMissile("ShakeYourAss", 0, 0, 0, 0)
		TNT1 A 0 A_FireCustomMissile("YellowFlareSpawn",0,0,0,0)
        CHAF A 1 BRIGHT A_FireBullets(3, 3, 1, 8, "MachineGunBulletPuff", 1)
        CHAF A 0 BRIGHT A_FireCustomMissile("MinigunTracer", random(-3,3), 0, -1, random(-3,3))
        TNT1 A 0 A_Firecustommissile("50CaseSpawn",0,0,-12,-18)
        CHAF BC 1 //A_FireCustomMissile("SmokeSpawner11",0,0,0,0)
        TNT1 A 0 A_SetAngle(random(1, -1) + angle)
		
        TNT1 A 0 A_PlaySound("weapons/minigunfire")
        TNT1 A 0 A_Recoil(0.1)
		TNT1 A 0 A_FireCustomMissile("ShakeYourAss", 0, 0, 0, 0)
		TNT1 A 0 A_FireCustomMissile("YellowFlareSpawn",0,0,0,0)
        CHAF D 1 BRIGHT A_FireBullets(3, 3, 1, 8, "MachineGunBulletPuff", 1)
        CHAF A 0 BRIGHT A_FireCustomMissile("MinigunTracer", random(-3,3), 0, -1, random(-3,3))
        TNT1 A 0 A_Firecustommissile("50CaseSpawn",0,0,-12,-18)
        CHAF EF 1 //A_FireCustomMissile("SmokeSpawner11",0,0,0,0)
		TNT1 A 0 A_SetAngle(random(1, -1) + angle)
		
		TNT1 A 0 A_PlaySound("weapons/minigunfire")
		TNT1 A 0 A_FireCustomMissile("YellowFlareSpawn",0,0,0,0)
        CHAF G 1 BRIGHT A_FireBullets(3, 3, 1, 8, "MachineGunBulletPuff", 1)
        CHAF A 0 BRIGHT A_FireCustomMissile("MinigunTracer", random(-3,3), 0, -1, random(-3,3))
        TNT1 A 0 A_Firecustommissile("50CaseSpawn",0,0,-12,-18)
        CHAF HI 1 //A_FireCustomMissile("SmokeSpawner11",0,0,0,0)
        TNT1 A 0 A_SetAngle(random(1, -1) + angle)
		


        MNGG B 0 A_ReFire
              TNT1 A 0 A_JumpIfInventory("Spin",1,"Ready2")
        TNT1 A 0 A_PlaySound("CHAINSTO")
     TNT1 A 0 A_WeaponReady
	 	TNT1 A 0 A_JumpIfInventory("Salute1", 1, "Salute")
		TNT1 A 0 A_JumpIfInventory("Salute2", 1, "Salute")
     //CHAG ABCDABCD 1 A_FireCustomMissile("SmokeSpawner11",0,0,0,0)
      TNT1 A 0 A_JumpIfInventory("Kicking",1,"DoKick")
	  	TNT1 A 0 A_JumpIfInventory("Salute1", 1, "Salute")
		TNT1 A 0 A_JumpIfInventory("Salute2", 1, "Salute")
     CHAG ABCD 1 A_FireCustomMissile("SmokeSpawner11",0,0,0,0)
      TNT1 A 0 A_JumpIfInventory("Kicking",1,"DoKick")
	  	TNT1 A 0 A_JumpIfInventory("Salute1", 1, "Salute")
		TNT1 A 0 A_JumpIfInventory("Salute2", 1, "Salute")
     CHAG ABCD 1 A_FireCustomMissile("SmokeSpawner11",0,0,0,0)
	 TNT1 A 0 A_Refire
      TNT1 A 0 A_JumpIfInventory("Kicking",1,"DoKick")
	  	TNT1 A 0 A_JumpIfInventory("Salute1", 1, "Salute")
		TNT1 A 0 A_JumpIfInventory("Salute2", 1, "Salute")
     CHAG ABCD 2 A_FireCustomMissile("SmokeSpawner11",0,0,0,0)
        goto Ready+13


	Fire2:
		TNT1 A 0 A_JumpIfInventory("Salute1", 1, "Salute")
		TNT1 A 0 A_JumpIfInventory("Salute2", 1, "Salute")
        TNT1 A 0 A_PlaySound("weapons/minigunfire")
	    //MG2W B 0 Radius_Quake (2, 6, 0, 2, 0)
       // TNT1 A 0 ACS_Execute(279, 0, 0, 0, 0)
	   TNT1 A 0 A_FireCustomMissile("ShakeYourAss", 0, 0, 0, 0)
		TNT1 A 0 A_FireCustomMissile("YellowFlareSpawn",0,0,0,0)
        
		TNT1 A 0 A_SetAngle(random(2, -2) + angle)
		TNT1 A 0 A_SetPitch(-1 + pitch)
		
		CHAF A 1 BRIGHT A_FireBullets(3, 3, -1, 8, "MachineGunBulletPuff", 1)
        CHAF A 0 BRIGHT A_FireCustomMissile("MinigunTracer", random(-3,3), 0, -1, random(-3,3))
        //TNT1 A 0 ACS_Execute(279, 0, 0, 0, 0)
        TNT1 A 0 A_Firecustommissile("50CaseSpawn",0,0,-12,-18)
        CHAF B 1 //A_FireCustomMissile("SmokeSpawner11",0,0,0,0)

TNT1 A 0 A_SetAngle(random(2, -2) + angle)
TNT1 A 0 A_PlaySound("weapons/minigunfire")
        //TNT1 A 0 ACS_Execute(279, 0, 0, 0, 0)
		TNT1 A 0 A_FireCustomMissile("YellowFlareSpawn",0,0,0,0)
        CHAF G 1 BRIGHT A_FireBullets(3, 3, -1, 8, "MachineGunBulletPuff", 1)
        CHAF B 0 BRIGHT A_FireCustomMissile("MinigunTracer", random(-3,3), 0, -1, random(-3,3))
        //TNT1 A 0 ACS_Execute(279, 0, 0, 0, 0)
        TNT1 A 0 A_Firecustommissile("50CaseSpawn",0,0,-12,-18)
        CHAF H 1

        MNGG B 0 A_ReFire

     CHAG A 1 A_WeaponReady
     TNT1 A 0 A_FireCustomMissile("SmokeSpawner",0,0,0,0)

     CHAG B 1 A_WeaponReady
     TNT1 A 0 A_FireCustomMissile("SmokeSpawner",0,0,0,0)

     CHAG C 1 A_WeaponReady
     TNT1 A 0 A_FireCustomMissile("SmokeSpawner",0,0,0,0)

     CHAG D 1 A_WeaponReady
     TNT1 A 0 A_FireCustomMissile("SmokeSpawner",0,0,0,0)

        goto Ready2





  AltFire:
     TNT1 A 0 A_JumpIfInventory("Spin",1,"StopAlt")
     TNT1 A 0 A_GiveInventory ("Spin",1)
     //TNT1 A 0 SetPlayerProperty(0,1,0)
      TNT1 A 0 A_PlaySound("CHAINSTA")
     CHAG ABCD 2
     TNT1 A 0
     Goto Ready2

  StopAlt:
     TNT1 A 0 A_TakeInventory ("Spin",1)
     TNT1 A 0 A_PlaySound("CHAINSTO")
     //TNT1 A 0 SetPlayerProperty(0,0,0)
     CHAG ABCD 1
     CHAG ABCD 2
     TNT1 A 0
     Goto Ready+13




    DoKick:
	    TNT1 A 0
		TNT1 A 0 A_Takeinventory("Zoomed",1)
        TNT1 A 0 A_ZoomFactor(1.0)
		TNT1 A 0 A_Takeinventory("ADSmode",1)
		NULL A 0 A_JumpIf (momZ > 0, "AirKick")
		NULL A 0 A_JumpIf (momZ < 0, "AirKick")
		
        TNT1 A 0 A_jumpifinventory("PowerStrength",1,"BerserkerKick")
		TNT1 A 0 A_PlaySound("KICK")
		TNT1 A 0 SetPlayerProperty(0,1,0)
		KICK BCD 1
		RIFF A 0 A_FireCustomMissile("KickAttack", 0, 0, 0, -7)
        KICK H 4
		KICK A 0 A_Takeinventory("Kicking",1)
		KICK IGFEDCBA 1 
		TNT1 A 0 SetPlayerProperty(0,0,0)
		TNT1 A 0 A_JumpIfInventory("GoFatality", 1, "Steady")
		Goto Ready+6
    BerserkerKick:
		TNT1 A 0 A_PlaySound("KICK")
		TNT1 A 0 SetPlayerProperty(0,1,0)
		KICK ABCDEFG 1
        RIFF A 0 A_FireCustomMissile("SuperKickAttack", 0, 0, 0, -7)
        KICK H 3
		KICK A 0 A_Takeinventory("Kicking",1)
		KICK IGFEDCBA 1 
		TNT1 A 0 SetPlayerProperty(0,0,0)
		TNT1 A 0 A_JumpIfInventory("GoFatality", 1, "Steady")
		Goto Ready+6
	
	AirKick:
	    TNT1 A 0 A_jumpifinventory("PowerStrength",1,"SuperAirKick")
		TNT1 A 0 A_PlaySound("KICK")
		TNT1 A 0 A_Recoil (-6)
		KICK JKLMN 1
        RIFF A 0 A_FireCustomMissile("AirKickAttack", 0, 0, 0, -31)
        KICK O 3
		KICK A 0 A_Takeinventory("Kicking",1)
		KICK PQRST 2
		TNT1 A 0 A_JumpIfInventory("GoFatality", 1, "Steady")
		Goto Ready+13
		
	SuperAirKick:
		TNT1 A 0 A_PlaySound("KICK")
		TNT1 A 0 A_Recoil (-6)
		KICK JKLMN 1
        RIFF A 0 A_FireCustomMissile("SuperAirKickAttack", 0, 0, 0, -31)
        KICK O 3
		KICK A 0 A_Takeinventory("Kicking",1)
		KICK PQRST 2
		TNT1 A 0 A_JumpIfInventory("GoFatality", 1, "Steady")
		Goto Ready+13
    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("FUCK", 1)
        FUCK C 2 A_AlertMonsters
		FUCK D 15 A_Takeinventory("Taunting",1)
        FUCK CBA 5
        TNT1 A 5
		Goto Ready
	Salute:
	    TNT1 A 0 SetPlayerProperty(0,1,0)
		TNT1 A 0 A_ALertMonsters
		SALU ABCDEDCDEDCDEDCBA 4
		TNT1 A 0 A_TakeInventory("Salute1",1)
		TNT1 A 0 A_TakeInventory("Salute2",1)
		TNT1 A 0 SetPlayerProperty(0,0,0)
		Goto Ready
	}
}

