// Upgrade Spawner Based on Dead Marines from Tomtefar's Extension
actor BD_EWM_UpgradeSystem: DeadMarine Replaces DeadMarine
{
	damagefactor "Avoid", 0.0
	damagefactor "Blood", 0.0    damagefactor "GreenBlood", 0.0    damagefactor "BlueBlood", 0.0    damagefactor "Taunt", 0.0    damagefactor "KillMe", 0.0
	damagefactor "Shrapnel", 100.0
	damagefactor "GibRemoving", 990.0
	+NOTAUTOAIMED
	+CLIENTSIDEONLY
	+FLOORCLIP
	Radius 0
	Game Doom
	States
	{
    Spawn:
	    TNT1 A 0
		TNT1 AAAAA 0 A_CustomMissile ("SuperWallRedBlood", 10, 0, random (0, 360), 2, random (5, 40))
		TNT1 AAAAAA 0 A_SpawnItemEx("Brutal_BloodSpot",random(64, -64),random(64, -64))
		TNT1 A 0 A_SpawnItem("MediumBloodSpot")
		TNT1 A 0 A_Jump(128,"Spawn3") // Chance of Spawning		
	    	TNT1 A 0 A_CheckSight("Spawn2")
		// Riot Shield
		TNT1 A 0 A_JumpIfInventory("ClassicPistol",1,5,AAPTR_PLAYER1) // Purist Players
		TNT1 A 0 A_JumpIfInventory("RiotShield",1,4,AAPTR_PLAYER1)
		TNT1 A 0 A_SpawnItem("RiotShieldSpawner",40)
	    	TNT1 A 0 A_CheckSight("Spawn2")
		TNT1 A 0 A_Jump(256,"Spawn3")
		// Slug Rounds
		TNT1 A 0 A_JumpIfInventory("SlugRoundsUpgrade",1,5,AAPTR_PLAYER1)
		TNT1 A 0 A_SpawnItem("AmmoShellBoxReplacer",25)
		TNT1 A 0 A_SpawnItem("SlugRounds",40)
		TNT1 A 0 A_CheckSight("Spawn2")
		TNT1 A 0 A_Jump(256,"Spawn3")
		// Super Shotgun for Ultimate DOOM
		TNT1 A 0 A_JumpIfInventory("ClassicSSG",1,5,AAPTR_PLAYER1) // Purist Players
		TNT1 A 0 A_JumpIfInventory("SSG",1,4,AAPTR_PLAYER1)
		TNT1 A 0 A_SpawnItem("SSGSpawnerReplacer",25)
		TNT1 A 0 A_CheckSight("Spawn2")
		TNT1 A 0 A_Jump(256,"Spawn3")
		// Compact Machine Gun Silencer
		TNT1 A 0 A_JumpIfInventory("IsPlayingAsPurist",1,6,AAPTR_PLAYER1)
		TNT1 A 0 A_JumpIfInventory("SilencerUpgrade",1,5,AAPTR_PLAYER1)
		TNT1 A 0 A_SpawnItem("CMGSpawner",35)
		TNT1 A 0 A_SpawnItem("CompactMGSilencer",40)
		TNT1 A 0 A_CheckSight("Spawn2")
		TNT1 A 0 A_Jump(256,"Spawn3")
		// Quad-Shotgun
		TNT1 A 0 A_JumpIfInventory("IsPlayingAsPurist",1,5,AAPTR_PLAYER1)
		TNT1 A 0 A_JumpIfInventory("Quad_Shotgun",1,4,AAPTR_PLAYER1)
		TNT1 A 0 A_SpawnItem("QSSGSpawner",40)
		TNT1 A 0 A_CheckSight("Spawn2")
		TNT1 A 0 A_Jump(256,"Spawn3")
		TNT1 A 0
		TNT1 A 0 A_Jump(160,2)
		TNT1 A 1 A_SpawnItem("CurbstompedMarine")
		Goto Death
		TNT1 A 0 A_Jump(160,2)
		TNT1 A 1 A_SpawnItem("AteMarine")
		Goto Death
		TNT1 A 0 A_Jump(160,2)
		TNT1 A 1 A_SpawnItem("DeadRippedOffMarine")
		Goto Death
		TNT1 A 0 A_Jump(160,2)
		TNT1 A 1 A_SpawnItem("FuckedMarine")
		Goto Death
		TNT1 A 0 A_Jump(160,2)
		TNT1 A 1 A_SpawnItem("ADoomedSpaceMarine2")
		Goto Death
		TNT1 A 1 A_SpawnItem("ADoomedSpaceMarine")
		Stop
		
    Spawn3:
	    	TNT1 A 0 A_CheckSight("Spawn2")
		TNT1 A 0
		TNT1 A 0 A_Jump(160,2)
		TNT1 A 1 A_SpawnItem("CurbstompedMarine")
		Goto Death
		TNT1 A 0 A_Jump(160,2)
		TNT1 A 1 A_SpawnItem("AteMarine")
		Goto Death
		TNT1 A 0 A_Jump(160,2)
		TNT1 A 1 A_SpawnItem("DeadRippedOffMarine")
		Goto Death
		TNT1 A 0 A_Jump(160,2)
		TNT1 A 1 A_SpawnItem("FuckedMarine")
		Goto Death
		TNT1 A 0 A_Jump(160,2)
		TNT1 A 1 A_SpawnItem("ADoomedSpaceMarine2")
		Goto Death
		TNT1 A 1 A_SpawnItem("ADoomedSpaceMarine")
		Stop
   Spawn2:
		TNT1 A 0 A_Jump(160,2)
		TNT1 A 1 A_SpawnItem("CurbstompedMarine")
		Goto Death
		TNT1 A 0 A_Jump(160,2)
		TNT1 A 1 A_SpawnItem("AteMarine")
		Goto Death
		TNT1 A 0 A_Jump(160,2)
		TNT1 A 1 A_SpawnItem("DeadRippedOffMarine")
		Goto Death
		TNT1 A 0 A_Jump(160,2)
		TNT1 A 1 A_SpawnItem("FuckedMarine")
		Goto Death
		TNT1 A 0 A_Jump(160,2)
		TNT1 A 1 A_SpawnItem("ADoomedSpaceMarine2")
		Goto Death
		TNT1 A 1 A_SpawnItem("ADoomedSpaceMarine")
		Stop

	Death:
		TNT1 A 0
		Stop
	}
}