
// --------------------------------------------------------------------------
//
// Super Shotgun
//
// --------------------------------------------------------------------------
ACTOR SSG : Doomweapon Replaces SuperShotgun
{
	Game Doom
	SpawnID 33
   Weapon.Kickback 50
	Weapon.SelectionOrder 400
	Weapon.AmmoUse 1
	Weapon.AmmoGive 8
	Weapon.AmmoType "Shell"
    +WEAPON.NOAUTOAIM
	+WEAPON.NOAUTOFIRE
	Inventory.PickupMessage "$GOTSHOTGUN2"
	Obituary "$OB_MPSSHOTGUN"
    Inventory.PickupSound "CLIPINSS"
	States
	{
	Steady:
	TNT1 A 1
	Goto Ready
	Ready:
        TNT1 A 1 A_JumpIfInventory("GoFatality", 1, "Steady")
        TNT1 A 0 A_PlaySound("CLIPINSS")
        SHT5 ABCD 1 A_JumpIfInventory("GoFatality", 1, "Steady")
        TNT1 AAA 0
        TNT1 A 0 A_JumpIfInventory("Kicking",1,"DoKick")
        TNT1 A 0 A_JumpIfInventory("Taunting",1,"Taunt")
				TNT1 A 0 A_JumpIfInventory("Salute1", 1, "Salute")
		TNT1 A 0 A_JumpIfInventory("Salute2", 1, "Salute")
        TNT1 A 0 A_JumpIfInventory("SSGAlt",1,"Ready2")
        TNT1 AAA 0
		SHT2 A 1 A_WeaponReady
		Goto Ready+7

Ready2:
        TNT1 A 0 A_JumpIfInventory("Reloading",1,"Reload")
        TNT1 AAA 0
		SHT2 A 1 A_WeaponReady
		Goto Ready+7
	Deselect:
		TNT1 A 0 A_Takeinventory("Zoomed",1)
        TNT1 A 0 A_ZoomFactor(1.0)
        //SHT5 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_Giveinventory("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
    NoAmmo:
        SHT2 A 4 A_PlaySound("weapons/empty")
		TNT1 A 0 A_TakeInventory("SSGAlt",1)
        Goto Ready+6
	 Fire:
      TNT1 A 0 A_TakeInventory("Reloading",1)
      TNT1 A 0 A_JumpIfInventory("SSGAlt",1,"AltFire3")
      //TNT1 A 0 A_JumpIfInventory("Shell",1,3)
        //Goto NoAmmo
        TNT1 AAAAA 0
        //TNT1 AAA 0 A_FireCustomMissile("SmokeSpawner",0,0,0,5)
        TNT1 A 0 A_Recoil(5)
        SHO9 A 1 BRIGHT A_playsound("SSHFIRE", 5)
        SHO9 A 0 A_firebullets (0,0,1,30,"shotpuff",1,120)
        TNT1 AAAAAAAAAAA 0 A_FireCustomMissile("Tracer", random(-7,7), 0, -1, random(-7,7))
      TNT1 AA 0 A_FireCustomMissile("YellowFlareSpawn",15,0,0,0)
      TNT1 AA 0 A_FireCustomMissile("YellowFlareSpawn",-15,0,0,0)
        SHO9 B 1 BRIGHT A_FireBullets (12, 6, 20, 7, "ShotgunPuff")
        TNT1 A 0 ACS_Execute(375, 0, 0, 0, 0)
      //TNT1 A 0 A_FireCustomMissile("ShakeYourAssQuad", 0, 0, 0, 0)
        SHO9 B 1 BRIGHT
      SHO8 C 1 Offset(0,62)
      SHO8 D 1 Offset(0,61)
      SHO8 E 1 Offset(0,60)
      TNT1 A 0 A_TakeInventory("SSGAlt",1)
      TNT1 A 0 A_TakeInventory("Reloading",1)
      //TNT1 A 0 A_JumpIfInventory("Shell",0,"NoAmmo")
        SHO8 E 2 Offset(0,56) //A_FireCustomMissile("SmokeSpawner",0,0,0,5)
        SHO8 C 2 Offset(0,42) //A_FireCustomMissile("SmokeSpawner",0,0,0,5)
        SHT2 B 2 Offset(20,48) //A_FireCustomMissile("SmokeSpawner",0,0,0,5)
        SHT2 B 2 Offset(10,36) //A_FireCustomMissile("SmokeSpawner",0,0,0,5)
        SHT2 BCDEFGHIJK 1 Offset(-1,33)
      TNT1 A 0 A_GiveInventory ("Pumping", 1)
        
        TNT1 A 0 A_PlaySound("weapons/sshotc")
      TNT1 AA 0 A_FireCustomMissile("SSGCaseSpawner",0,0,-10)
        SHT2 L 3
      SHT2 MMNNOO 1
        TNT1 A 0 A_playsound("weapons/sshotl")
      SHT2 P 1 Offset(10,36)
      SHT2 P 1 Offset(20,46)
      SHT2 Q 1 Offset(30,56)
      SHT2 Q 1 Offset(40,66)
      SHT2 R 1 Offset(50,76)
      TNT1 A 4
      TNT1 A 0 A_GiveInventory ("Pumping", 1)
        
      SHT2 T 1 Offset(30,56)
      SHT2 U 1 Offset(20,46)
      SHT2 V 1 Offset(1,33)
        
      TNT1 A 0 A_GiveInventory ("Pumping", 1)
        TNT1 A 0 A_PlaySound("weapons/sshotc")
        SHT2 WXYZ 1
      TNT1 A 0 A_GiveInventory ("Pumping", 1)
        SHO9 DEFG 1
      TNT1 A 0 A_ReFire
        Goto Ready+7

AltFire:
		TNT1 A 0 A_TakeInventory("Reloading",1)
		TNT1 A 0 A_JumpIfInventory("Shell",1,3)
        Goto NoAmmo
        TNT1 AAAAA 0
		TNT1 A 0 A_JumpIfInventory("SSGAlt",1,"AltFire2")


		TNT1 A 0 A_TakeInventory("Shell",1)
		TNT1 A 0 A_GiveInventory("SSGAlt",1)
        TNT1 A 0 A_Recoil(2)
        TNT1 A 0 A_ALertMonsters
        SHTA A 1 BRIGHT A_PlaySound("weapons/sg")
		TNT1 A 0 A_FireCustomMissile("YellowFlareSpawn",-5,0,0,0)
        SHTA A 2 BRIGHT A_FireBullets (6, 6, 10, 7, "ShotgunPuff")
        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)
		SHO8 E 2
        SHT2 A 2
        TNT1 A 0
        Goto Ready+6

AltFire2:
		TNT1 A 0 A_TakeInventory("SSGAlt",1)
		TNT1 A 0 A_TakeInventory("Reloading",1)

		TNT1 A 0 A_TakeInventory("Shell",1)
        TNT1 A 0 A_Recoil(2)
        TNT1 A 0 A_ALertMonsters
        SHTA B 1 BRIGHT A_PlaySound("weapons/sg")
		TNT1 A 0 A_FireCustomMissile("YellowFlareSpawn",5,0,0,0)
        SHTA B 2 BRIGHT A_FireBullets (6, 6, 10, 7, "ShotgunPuff")
        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)
        SHT2 A 2 BRIGHT
		SHO8 E 2

		TNT1 A 0 A_JumpIfInventory("Shell",0,"NoAmmo")
        SHT2 AA 2 //A_FireCustomMissile("SmokeSpawner",0,0,0,5)

        SHT2 BCDEFGHIJK 1
        
		TNT1 A 0 A_GiveInventory ("Pumping", 1)

        TNT1 A 0 A_PlaySound("weapons/sshotc")
		TNT1 AA 0 A_FireCustomMissile("SSGCaseSpawner",0,0,-10)
        SHT2 L 3
		SHT2 MMNNOOPPQQ 1
        TNT1 A 0 A_playsound("weapons/sshotl")
        
		TNT1 A 0 A_GiveInventory ("Pumping", 1)
		SHT2 RTUV 1 
        
		TNT1 A 0 A_GiveInventory ("Pumping", 1)
        TNT1 A 0 A_PlaySound("weapons/sshotc")
        SHT2 WXYZ 1
		TNT1 A 0 A_GiveInventory ("Pumping", 1)
        SHO9 DEFG 1
        SHT2 A 4
        Goto Ready+7

AltFire3:
		TNT1 A 0 A_TakeInventory("SSGAlt",1)
		TNT1 A 0 A_TakeInventory("Reloading",1)

        TNT1 A 0 A_Recoil(2)
        TNT1 A 0 A_ALertMonsters
        SHTA B 1 BRIGHT A_PlaySound("weapons/sg")
		TNT1 A 0 A_FireCustomMissile("YellowFlareSpawn",5,0,0,0)
        SHTA B 2 BRIGHT A_FireBullets (6, 6, 10, 5, "HitPuff")
        TNT1 AAAAAA 0 BRIGHT A_FireCustomMissile("ShotgunParticles", random(-10,10), 0, -1, random(-10,10))
        TNT1 A 0 ACS_Execute(374, 0, 0, 0, 0)
		//TNT1 A 0 A_FireCustomMissile("ShakeYourAssDouble", 0, 0, 0, 0)
		SHO8 E 2
        SHT2 A 2

		TNT1 A 0 A_JumpIfInventory("Shell",0,"NoAmmo")
         SHT2 AA 2 //A_FireCustomMissile("SmokeSpawner",0,0,0,5)

        SHT2 BCDEFGHIJK 1
        
		TNT1 A 0 A_GiveInventory ("Pumping", 1)

        TNT1 A 0 A_PlaySound("weapons/sshotc")
		TNT1 AA 0 A_FireCustomMissile("SSGCaseSpawner",0,0,-10)
        SHT2 L 3
		SHT2 MMNNOOPPQQ 1
        TNT1 A 0 A_playsound("weapons/sshotl")
        
		TNT1 A 0 A_GiveInventory ("Pumping", 1)
		SHT2 RTUV 1 
        
		TNT1 A 0 A_GiveInventory ("Pumping", 1)
        TNT1 A 0 A_PlaySound("weapons/sshotc")
        SHT2 WXYZ 1
        SHO9 DEFG 1
        SHT2 A 4
        Goto Ready+7
Reload:
		TNT1 A 0 A_TakeInventory("SSGAlt",1)
		TNT1 A 0 A_TakeInventory("Reloading",1)
		TNT1 A 0 A_JumpIfInventory("Shell",0,"NoAmmo")

        SHT2 BCDEFGHIJK 1
        

        TNT1 A 0 A_PlaySound("weapons/sshotc")
		TNT1 A 0 A_FireCustomMissile("SSGCaseSpawner",0,0,-10)
        SHT7 L 5
        SHT7 MMNNOOPP 1
        SHT2 QQ 1
        TNT1 A 0 A_playsound("weapons/sshotl")
        
		TNT1 A 0 A_GiveInventory ("Pumping", 1)
		SHT2 RTUV 1 
        
		TNT1 A 0 A_GiveInventory ("Pumping", 1)
        TNT1 A 0 A_PlaySound("weapons/sshotc")
        SHT2 WXYZ 1
		TNT1 A 0 A_GiveInventory ("Pumping", 1)
        SHO9 DEFG 1
        SHT2 A 4
        Goto Ready+7

Reload6:
		TNT1 A 0 A_TakeInventory("SSGAlt",1)
		TNT1 A 0 A_TakeInventory("Reloading",1)
        SHT2 BCDEFGHIJK 1
        
		TNT1 A 0 A_GiveInventory ("Pumping", 1)

        TNT1 A 0 A_PlaySound("weapons/sshotc")
		TNT1 AA 0 A_FireCustomMissile("SSGCaseSpawner",0,0,-10)
        SHT2 L 15
		SHT2 MMNNOOPPQQ 1
        TNT1 A 0 A_playsound("weapons/sshotl")
        
		TNT1 A 0 A_GiveInventory ("Pumping", 1)
		SHT2 RTUV 1 
        
		TNT1 A 0 A_GiveInventory ("Pumping", 1)
        TNT1 A 0 A_PlaySound("weapons/sshotc")
        SHT2 WXYYZZ 1
		TNT1 A 0 A_GiveInventory ("Pumping", 1)
        SHO9 DDEEFFGG 1
        SHT2 A 4
        Goto Ready+7

	Spawn:
		SGN2 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+6
DoKick2:
	    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 Reload+7
    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+6
		
	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+6

    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
	}
}
