actor RevXChecker //by 0x8BADF00D#8030
{
  states
  {
  Spawn:
	TNT1 AA 2 A_JumpIf(1 == (ACS_ExecuteWithResult(154,0,0,0)), "WithUpgrades")
	TNT1 A 0 A_SpawnItem("NewerSSGSpawner")
	stop
  WithUpgrades:
	TNT1 A 0 A_SpawnItem("NewSSGSpawnerWithUpgrades")
	stop
  }
}

Actor NewerSSGSpawner : RandomSpawner
{
DropItem "GMIDSuperShotgun"
DropItem "RevX"
}

Actor NewSSGSpawnerWithUpgrades : RandomSpawner
{
DropItem "GMIDSuperShotgun"
DropItem "RevX"
DropItem "GMIDSuperShotgun"
DropItem "RevX"
DropItem "GMIDSuperShotgun"
DropItem "RevX"
DropItem "GMIDSuperShotgun"
DropItem "RevX"
DropItem "RevXUpgrade1"
DropItem "RevXUpgrade2"
}
Actor RocketLauncherSpawner : RandomSpawner replaces RocketLauncher
{
DropItem "GMIDMissileLauncher"
DropItem "40mmGrenadeLauncher"
}

Actor PlasmaGunSpawner : RandomSpawner replaces PlasmaRifle
{
DropItem "GMIDRailgun"
DropItem "PlasmaCannon"
}

Actor ClipSpawner : RandomSpawner replaces Clip
{
DropItem "Clip2"
DropItem "Clip3"
}

Actor ClipBoxSpawner : RandomSpawner replaces ClipBox
{
DropItem "ClipBox2"
DropItem "ClipBox3"
}

Actor ShellSpawner : RandomSpawner replaces Shell
{
DropItem "NewShells"
DropItem "NewShells"
DropItem "NewShells"
DropItem "NewShells"
DropItem "NewShells"
DropItem "NewShells"
DropItem "NewShells"
DropItem "NewShells"
DropItem "NewShells"
DropItem "NewShells"
DropItem "NewShells"
DropItem "NewShells2"
}

Actor ShellBoxSpawner : RandomSpawner replaces ShellBox
{
DropItem "NewShellBox"
DropItem "NewShellBox"
DropItem "NewShellBox"
DropItem "NewShellBox"
DropItem "NewShellBox"
DropItem "NewShellBox"
DropItem "NewShellBox"
DropItem "NewShellBox"
DropItem "NewShellBox"
DropItem "NewShellBox"
DropItem "NewShellBox"
DropItem "NewShellBox2"
}

Actor CellSpawner : RandomSpawner replaces Cell
{
DropItem "NewCell"
DropItem "SmallMana"
}

Actor CellPackSpawner : RandomSpawner replaces CellPack
{
DropItem "NewCellPack"
DropItem "LargeMana"
}

Actor BFGSpawner : RandomSpawner replaces BFG9000
{
DropItem "GmidBFG9000"
DropItem "SoulCubeGenerator"
}
Actor SoulsphereSpawner : RandomSpawner replaces Soulsphere
{
DropItem "LifeSphere"
DropItem "HealthBackpack"
}

Actor ColaSpawner : RandomSpawner replaces HealthBonus
{
DropItem "2GramsofCocaCola"
DropItem "2GramsofCocaCola"
DropItem "2GramsofCocaCola"
DropItem "2GramsofCocaCola"
DropItem "2GramsofCocaCola"
DropItem "2GramsofCocaCola"
DropItem "2GramsofCocaCola"
DropItem "5GramsofCocaCola"
}

Actor ArmorSpawner : RandomSpawner replaces ArmorBonus
{
DropItem "ArmorShard"
DropItem "ArmorShard"
DropItem "ArmorShard"
DropItem "ArmorShard"
DropItem "ArmorShard"
DropItem "ArmorShard"
DropItem "ArmorShard"
DropItem "SuperArmorShard"
}

Actor GreenArmorSpawner : RandomSpawner replaces GreenArmor
{
DropItem "LightArmorVest"
DropItem "StrongArmorVest"
}

Actor BlueArmorSpawner : RandomSpawner replaces BlueArmor
{
DropItem "HeavyArmorVest"
DropItem "PraetorArmorVest"
}

Actor BerserkSpawner : RandomSpawner replaces Berserk
{
DropItem "DoubleSphere"
DropItem "QuadDamage"
}

Actor DeadPlayerSpawner : RandomSpawner replaces DeadMarine
{
DropItem "CarcassBrownScientist"
DropItem "DeadMaleScientist"
DropItem "DeadFemaleScientist"
DropItem "Corp01"
DropItem "Corp02"
DropItem "Corp03"
DropItem "Corp04"
DropItem "Corp05"
DropItem "Corp06"
DropItem "MarineVictim"
DropItem "Skeleton"
DropItem "DeadPony1"
DropItem "DeadGeneral"
DropItem "CarcassSoldierHalfCut"
DropItem "CarcassShirtlessBeheaded"
DropItem "CarcassShirtlessMarine"
}

Actor MinorFoodSpawner : RandomSpawner replaces Stimpack
{
DropItem "Apple"
DropItem "Grapes"
DropItem "Orange"
}

Actor MajorFoodSpawner : RandomSpawner replaces Medikit
{
DropItem "Hamburg"
DropItem "EntireChickenYouWeirdo"
DropItem "PizzaZone"
}

Actor AllMapSpawner : RandomSpawner replaces AllMap
{
DropItem "NewAllMap"
DropItem "NewAllMap"
DropItem "NewAllMap"
DropItem "CookieCrystalSpawner"
}

//This is a new set of weapon spawners.
//What this will do is spawn a weapon, and then a set of rats that will scurry away from the player, ala Duke 3D.
//I was originally planning on having them be stepped on, like it was in the base code, but they would end up being squished by the weapon that they spawned near.
//Base code from Realm667.

ACTOR NewChainsawSpawner replaces Chainsaw
{
	States
	{
	Spawn:
		TNT1 A 0 NoDelay A_SpawnItemEx("GMIDChainsaw")
		TNT1 A 0 A_DropItem("ScurryRat")
		TNT1 A 0 A_DropItem("ScurryRat")
		TNT1 A 0 A_DropItem("ScurryRat")
		Stop
	}
}

ACTOR NewShotgunSpawner replaces Shotgun
{
	States
	{
	Spawn:
		TNT1 A 0 NoDelay A_SpawnItemEx("GMIDShotgun")
		TNT1 A 0 A_DropItem("ScurryRat")
		TNT1 A 0 A_DropItem("ScurryRat")
		TNT1 A 0 A_DropItem("ScurryRat")
		Stop
	}
}

ACTOR NewSSGSpawner replaces SuperShotgun
{
	States
	{
	Spawn:
		TNT1 A 0 NoDelay A_SpawnItemEx("RevXChecker")
		TNT1 A 0 A_DropItem("ScurryRat")
		TNT1 A 0 A_DropItem("ScurryRat")
		TNT1 A 0 A_DropItem("ScurryRat")
		Stop
	}
}

ACTOR NewChaingunSpawner replaces Chaingun
{
	States
	{
	Spawn:
		TNT1 A 0 NoDelay A_SpawnItemEx("VGun")
		TNT1 A 0 A_DropItem("ScurryRat")
		TNT1 A 0 A_DropItem("ScurryRat")
		TNT1 A 0 A_DropItem("ScurryRat")
		Stop
	}
}

ACTOR NewRocketLauncherSpawner replaces RocketLauncher
{
	States
	{
	Spawn:
		TNT1 A 0 NoDelay A_SpawnItemEx("RocketLauncherSpawner")
		TNT1 A 0 A_DropItem("ScurryRat")
		TNT1 A 0 A_DropItem("ScurryRat")
		TNT1 A 0 A_DropItem("ScurryRat")
		Stop
	}
}

ACTOR NewPlasmaRifleSpawner replaces PlasmaRifle
{
	States
	{
	Spawn:
		TNT1 A 0 NoDelay A_SpawnItemEx("PlasmaGunSpawner")
		TNT1 A 0 A_DropItem("ScurryRat")
		TNT1 A 0 A_DropItem("ScurryRat")
		TNT1 A 0 A_DropItem("ScurryRat")
		Stop
	}
}

ACTOR NewBFGSpawner replaces BFG9000
{
	States
	{
	Spawn:
		TNT1 A 0 NoDelay A_SpawnItemEx("BFGSpawner")
		TNT1 A 0 A_DropItem("ScurryRat")
		TNT1 A 0 A_DropItem("ScurryRat")
		TNT1 A 0 A_DropItem("ScurryRat")
		Stop
	}
}

Actor CorpseSpawner1 : RandomSpawner replaces GibbedMarine
{
DropItem "DeadMaleScientist"
DropItem "DeadFemaleScientist"
DropItem "Skeleton"
DropItem "ZombieScientist"
}

Actor CorpseSpawner2 : RandomSpawner replaces GibbedMarineExtra
{
DropItem "DeadMaleScientist"
DropItem "DeadFemaleScientist"
DropItem "Skeleton"
DropItem "ZombieScientist"
}

Actor MarineSpawner1 : RandomSpawner replaces LiveStick
{
DropItem "BoundPlayer1"
DropItem "BoundPlayer2"
DropItem "CarcassImpaledMarine"
DropItem "CarcassImpaledMarine2"
DropItem "ChestSkewered"
DropItem "ImpalingSpike4"
DropItem "ImpalingSpike5"
DropItem "ImpalingSpike6"
DropItem "ImpalingSpike7"
DropItem "ImpalingSpike8"
}

Actor MarineSpawner2 : RandomSpawner replaces DeadStick
{
DropItem "BoundPlayer1"
DropItem "BoundPlayer2"
DropItem "CarcassImpaledMarine"
DropItem "CarcassImpaledMarine2"
DropItem "ChestSkewered"
DropItem "ImpalingSpike4"
DropItem "ImpalingSpike5"
DropItem "ImpalingSpike6"
DropItem "ImpalingSpike7"
DropItem "ImpalingSpike8"
}

Actor MarineSpawner3 : RandomSpawner replaces HeartColumn
{
DropItem "BoundPlayer1"
DropItem "BoundPlayer2"
DropItem "CarcassImpaledMarine"
DropItem "CarcassImpaledMarine2"
DropItem "ChestSkewered"
DropItem "ImpalingSpike4"
DropItem "ImpalingSpike5"
DropItem "ImpalingSpike6"
DropItem "ImpalingSpike7"
DropItem "ImpalingSpike8"
}

Actor BigTreeSpawner : RandomSpawner replaces BigTree
{
DropItem "GardenTree1"
DropItem "GardenTree2"
}

Actor ExplosionSpawner : RandomSpawner
{
DropItem "NewExplosion"
DropItem "NewExplosion2"
}

actor "ZombiemanSpawner" : RandomSpawner replaces ZombieMan
{
	DropItem "SonicXRainbow"
	DropItem "SonicXRainbow"
	DropItem "SonicXRainbow"
	DropItem "SonicXRainbow"
	DropItem "SonicXRainbow"
	DropItem "SonicXRainbow"
	DropItem "SonicXRainbow"
	DropItem "SonicXRainbow"
	DropItem "SonicXRainbow"
	DropItem "SonicXRainbow"
	DropItem "SonicXRainbow"
	DropItem "Zombieman_PossessedSpawner"
}

actor "ShotgunDudeSpawner" : RandomSpawner replaces ShotgunGuy
{
	DropItem "OctaLeb"
	DropItem "OctaLeb"
	DropItem "OctaLeb"
	DropItem "OctaLeb"
	DropItem "OctaLeb"
	DropItem "OctaLeb"
	DropItem "OctaLeb"
	DropItem "OctaLeb"
	DropItem "OctaLeb"
	DropItem "OctaLeb"
	DropItem "OctaLeb"
	DropItem "ShotgunBoi_PossessedSpawner"
}

actor "ChaingunGuySpawner" : RandomSpawner replaces ChaingunGuy
{
	DropItem "AppleSheriff"
	DropItem "AppleSheriff"
	DropItem "AppleSheriff"
	DropItem "AppleSheriff"
	DropItem "AppleSheriff"
	DropItem "AppleSheriff"
	DropItem "AppleSheriff"
	DropItem "AppleSheriff"
	DropItem "AppleSheriff"
	DropItem "AppleSheriff"
	DropItem "AppleSheriff"
	DropItem "ChaingunBoi_PossessedSpawner"
}

Actor Zombieman_PossessedSpawner : RandomSpawner
{
	DropItem "ZSecPistol"
	DropItem "BlasterSoldier"
	DropItem "EvilMarine_Rifle"
}

Actor ShotgunBoi_PossessedSpawner : RandomSpawner
{
	DropItem "ZSpecOpsShotgun"
	DropItem "SawedOffShotgunGuy"
	DropItem "EvilMarine_Shotgun"
}

Actor ChaingunBoi_PossessedSpawner : RandomSpawner
{
	DropItem "HomelessGunman"
	DropItem "ChaingunMajor"
	DropItem "EvilMarine_Minigun"
}

Actor BossDeathSpawner : RandomSpawner
{
	DropItem "BossDeathRD"
	DropItem "BossDeathOC"
	DropItem "BossDeathPP"
	DropItem "BossDeathHH"
	DropItem "BossDeathCL"
	DropItem "BossDeathAH"
	DropItem "BossDeathFS"
	DropItem "BossDeathTS"
}