Actor Pumping : Inventory
{
inventory.maxamount 1
}

// --------------------------------------------------------------------------
//
// Shotgun
//
// --------------------------------------------------------------------------

ACTOR Shot_Gun : Shotgun Replaces Shotgun
{
	Game Doom
	SpawnID 27
	Weapon.SelectionOrder 1300
	Weapon.AmmoUse1 0
	Weapon.AmmoUse2 0
	Weapon.AmmoGive1 4
	Weapon.AmmoGive2 0
	Weapon.AmmoType1 "Shell"
	Weapon.AmmoType2 "ShotgunAmmo"
	Inventory.PickupMessage "$GOTSHOTGUN"
    Inventory.PickupSound "weapons/sgpump"
	Obituary "$OB_MPSHOTGUN"
    AttackSound "None"
    +WEAPON.NOALERT
    +WEAPON.NOAUTOAIM
	+WEAPON.NOAUTOFIRE
	States
	{

	Steady:
	TNT1 A 1
	Goto Ready
	Ready:
        TNT1 AAAA 0 A_JumpIfInventory("GoFatality", 1, "Steady")
        TNT1 A 0 A_PlaySound("weapons/sgpump")
		SHTG CBA 0
        SHSS ABCD 1 A_JumpIfInventory("GoFatality", 1, "Steady")
        TNT1 AAAAAAAAAAAAAAA 0
        TNT1 A 0 A_JumpIfInventory("Kicking",1,"DoKick")
        TNT1 A 0 A_JumpIfInventory("Taunting",1,"Taunt")
        TNT1 A 0 A_JumpIfInventory("Reloading",1,"Reload")
				TNT1 A 0 A_JumpIfInventory("Salute1", 1, "Salute")
		TNT1 A 0 A_JumpIfInventory("Salute2", 1, "Salute")
		SHTG A 1 A_WeaponReady
//TNT1 A 0 BRIGHT A_FireCustomMissile("Alerter", random(-2,2), 0, -1, 0)
		Goto Ready+14
		
		Ready2:
        TNT1 A 0 A_JumpIfInventory("Kicking",1,"DoKick")
        TNT1 A 0 A_JumpIfInventory("Taunting",1,"Taunt")
        TNT1 A 0 A_JumpIfInventory("Reloading",1,"Reload")
				TNT1 A 0 A_JumpIfInventory("Salute1", 1, "Salute")
		TNT1 A 0 A_JumpIfInventory("Salute2", 1, "Salute")
		SHT8 A 8 A_WeaponReady
		
		        TNT1 A 0 A_JumpIfInventory("Kicking",1,"DoKick")
        TNT1 A 0 A_JumpIfInventory("Taunting",1,"Taunt")
        TNT1 A 0 A_JumpIfInventory("Reloading",1,"Reload")
				TNT1 A 0 A_JumpIfInventory("Salute1", 1, "Salute")
		TNT1 A 0 A_JumpIfInventory("Salute2", 1, "Salute")
		SHT8 B 8 A_WeaponReady
		
		        TNT1 A 0 A_JumpIfInventory("Kicking",1,"DoKick")
        TNT1 A 0 A_JumpIfInventory("Taunting",1,"Taunt")
        TNT1 A 0 A_JumpIfInventory("Reloading",1,"Reload")
				TNT1 A 0 A_JumpIfInventory("Salute1", 1, "Salute")
		TNT1 A 0 A_JumpIfInventory("Salute2", 1, "Salute")
		SHT8 C 8 A_WeaponReady
		Loop
		
	Deselect:
			TNT1 A 0 A_Takeinventory("Zoomed",1)
        TNT1 A 0 A_ZoomFactor(1.0)
		TNT1 A 0 A_Takeinventory("ADSmode",1)
        //SHSS 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_Giveinventory("ShotgunSelected",1)
	TNT1 A 0 A_Takeinventory("SSGSelected",1)
	TNT1 A 0 A_Takeinventory("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
    Fire:
        TNT1 A 0 A_Takeinventory("Reloading",1)
		TNT1 A 0 A_JumpIfInventory("Zoomed",1,"Fire2")
        TNT1 A 0 A_JumpIfInventory("ShotgunAmmo",1,2)
        Goto Reload
        TNT1 AAAA 0
        //TNT1 AA 0 A_FireCustomMissile("SmokeSpawner",0,0,0,5)
        TNT1 A 0 A_AlertMonsters
        TNT1 A 0 A_PlaySound("weapons/sg", 1)
        TNT1 A 0
		TNT1 A 0 A_FireCustomMissile("YellowFlareSpawn",0,0,0,0)
		
		//TNT1 AAAAAA 0 BRIGHT A_FireCustomMissile("ShotgunParticles", random(-10,10), 0, -1, random(-10,10))
		TNT1 AAAAA 0 A_FireCustomMissile("Tracer", random(-5,5), 0, -1, random(-5,5))
        //TNT1 A 0 ACS_Execute(374, 0, 0, 0, 0)
		TNT1 A 0 A_FireCustomMissile("ShakeYourAssDouble", 0, 0, 0, 0)
		TNT1 A 0 A_Takeinventory("ShotgunAmmo",1)
        SHTF B 1 BRIGHT
		SHTG A 0 A_FireBullets (4.0, 4.0, 10, 7, "ShotgunPuff")
		SHTF CDE 1
		
		
		SHTG A 3
   TNT1 A 0 A_GiveInventory ("Pumping", 1)
   SHTG BCDEFG 1
   TNT1 A 0 A_FireCustomMissile("ShotCaseSpawn",0,0,-4,-4)
   SHTG H 1 A_PlaySound("weapons/sgpump", 3)
   SHTG IJKL 1
        SHTG KJIHGFEDCB 1 A_JumpIfInventory("Kicking",1,"DoKick")
		
   //SHTG A 6 <-- Old frame
        SHTG A 1 Offset(10,36) // <-- New frames
        SHTG A 1 Offset(9,40) //
        SHTG A 1 Offset(4,40) //
        SHTG A 1 Offset(0,32) //
        SHTG A 0 A_Refire
        SHTG A 0 //A_Refire
		Goto Ready+14
		
	Fire2:
        TNT1 A 0 A_Takeinventory("Reloading",1)
        TNT1 A 0 A_JumpIfInventory("ShotgunAmmo",1,2)
        Goto Reload
        TNT1 AAAA 0
        //TNT1 AA 0 A_FireCustomMissile("SmokeSpawner",0,0,0,5)
        TNT1 A 0 A_AlertMonsters
        TNT1 A 0 A_PlaySound("weapons/sg", 1)
        TNT1 A 0
		TNT1 A 0 A_FireCustomMissile("YellowFlareSpawn",0,0,0,0)
		SHTG A 0 A_FireBullets (2.3, 2.3, 10, 6, "ShotgunPuff")
		TNT1 AAAAA 0 A_FireCustomMissile("Tracer", random(-5,5), 0, -1, random(-5,5))
		TNT1 A 0 ACS_Execute(281, 0, 0, 0, 0)
		//TNT1 A 0 A_FireCustomMissile("ShakeYourAssDouble", 0, 0, 0, 0)
		TNT1 A 0 A_Takeinventory("ShotgunAmmo",1)
        SHT8 F 2 BRIGHT
		SHT8 GA 2
TNT1 A 0 A_ZoomFactor(1.0)
        SHT8 ADE 2	
   TNT1 A 0 A_GiveInventory ("Pumping", 1)
   SHTG BCDEFG 1
   TNT1 A 0 A_FireCustomMissile("ShotCaseSpawn",0,0,-4,-4)
   SHTG H 1 A_PlaySound("weapons/sgpump")
   SHTG IJKL 1 
        TNT1 A 0 A_JumpIfInventory("Kicking",1,"DoKick")
        SHTG KJIHGFEDCB 1
TNT1 A 0 A_ZoomFactor(1.8)
SHT8 ED 2
TNT1 A 0 A_Refire
		Goto Ready2
	
	AltFire:
        TNT1 A 0
		TNT1 A 0 A_JumpIfInventory("Zoomed",1,8)
		TNT1 A 0 A_Giveinventory("Zoomed",1)
        TNT1 A 0 A_ZoomFactor(1.8)
		TNT1 A 0 A_Giveinventory("ADSmode",1)
        SHT8 ED 2
        Goto Ready2
        TNT1 AAAAAA 0
        SHT8 DE 2
		TNT1 A 0 A_Takeinventory("Zoomed",1)
        TNT1 A 0 A_ZoomFactor(1.0)
		TNT1 A 0 A_Takeinventory("ADSmode",1)
        Goto Ready+12
	
	Spawn:
		SHTC A -1
		Stop
    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+14
    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+14
	
	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+14
		
	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+14
    Taunt:
	    TNT1 A 0 A_Takeinventory("Zoomed",1)
        TNT1 A 0 A_ZoomFactor(1.0)
        TNT1 A 5
		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 A 2
        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+14
	Salute:
	    TNT1 A 0 A_Takeinventory("Zoomed",1)
        TNT1 A 0 A_ZoomFactor(1.0)
	    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+14

    Reload:
	    TNT1 A 0 A_Takeinventory("Zoomed",1)
        TNT1 A 0 A_ZoomFactor(1.0)
		SHTG A 1 A_WeaponReady

        TNT1 A 0 A_JumpIfInventory("Shell",1,3)
        Goto Ready+14
        TNT1 AAAA 0
		SHTG B 1 //A_PlaySound("weapons/sgpump")
				TNT1 A 0 A_GiveInventory ("Pumping", 1)
		SHTG CDEFGHIJ 1

        TNT1 AAAAA 0
        TNT1 A 0 A_JumpIfInventory("Shell",1,2)
        Goto Reload+53
        TNT1 AAAAA 0


		TNT1 A 0 A_GiveInventory ("Pumping", 1)
        TNT1 A 0 A_JumpIfInventory("ShotgunAmmo",8,23)
		//TNT1 A 0 A_JumpIfInventory("Shell",0,23)
        TNT1 A 0
        TNT1 A 0 A_Giveinventory("ShotgunAmmo",1)
		TNT1 A 0 A_Takeinventory("Shell",1)


        SSHR ABC 1
        SSHR D 1 A_PlaySound("insertshell")
        SSHR EFG 1
        SSHR A 1 A_Refire
        TNT1 A 0 A_JumpIfInventory("Kicking",1,"DoKick")


        Goto Reload+18
        TNT1 AAAAA 0
		TNT1 A 0 A_Takeinventory("Reloading",1)

		TNT1 A 0 A_Takeinventory("Reloading",1)
		SHTG GGGG 0
		SHTG H 0 A_PlaySound("weapons/sgpump")
		SHTG IJKLKJIHGFEDCBA 1
		TNT1 A 0 A_Takeinventory("Reloading",1)
		TNT1 A 0 //A_Giveinventory("SGFullReloaded",1)
		Goto Ready+23
		

	}
}

ACTOR ShotgunAmmo : Ammo
{
   Inventory.Amount 0
   Inventory.MaxAmount 8
   Ammo.BackpackAmount 0
   Ammo.BackpackMaxAmount 8
}



