// Random Weapon Spawners (used by classic Doom multiplayer maps)

ACTOR WeaponSpawner1 : RandomSpawner
{
	DropItem "IDMSuperShotgun", 256, 500
	DropItem "IDMShotgun", 256, 120
	DropItem "SuperChaingun", 256, 110
	DropItem "HeavyMachinegun",255, 110
	DropItem "RiotShotgun", 256, 110
	DropItem "Screwgun", 256, 110
	DropItem "SuperNailgun", 256, 110
	DropItem "IDMRocketlauncher", 256, 110
	DropItem "IDMRailgun", 256, 110
	DropItem "IDMPlasmagun", 256, 110
}

ACTOR DuelWeaponSpawner1 : RandomSpawner
{
	DropItem "IDMSuperShotgun"
	DropItem "RiotShotgun"
	DropItem "IDMShotgun"
	DropItem "Screwgun"
}

ACTOR WeaponSpawner2 : RandomSpawner
{
	DropItem "IDMSuperShotgun", 256, 150
	DropItem "IDMShotgun", 256, 150
	DropItem "SuperChaingun", 256, 150
	DropItem "RiotShotgun", 256, 150
	DropItem "IDMRailgun", 256, 150
	DropItem "SuperNailgun", 256, 150
	DropItem "Screwgun", 256, 150
	DropItem "HeavyMachinegun",255, 150
	DropItem "IDMRocketlauncher", 256, 150
	DropItem "IDMPlasmagun", 256, 150
}

ACTOR DuelWeaponSpawner2 : RandomSpawner
{
	DropItem "IDMSuperShotgun"
	DropItem "RiotShotgun"
	DropItem "IDMShotgun"
	DropItem "Screwgun"
	DropItem "SuperNailgun"
	DropItem "SuperChaingun"
	DropItem "HeavyMachinegun"
}

ACTOR WeaponSpawner3 : RandomSpawner
{
	DropItem "SuperNailgun"
	DropItem "SuperChaingun"
	DropItem "HeavyMachinegun"
	DropItem "AssaultRifle"
}

ACTOR WeaponSpawner4 : RandomSpawner
{
	DropItem "IDMRocketlauncher"
	DropItem "IDMGrenadeLauncher"
	DropItem "BarrageLauncher"
	DropItem "HeatSeeker"
	DropItem "MiniBomber"
}

ACTOR DuelWeaponSpawner4 : RandomSpawner
{
	DropItem "IDMRocketlauncher"
	DropItem "IDMGrenadeLauncher"
	DropItem "BarrageLauncher"
	DropItem "MiniBomber"
}

ACTOR WeaponSpawner5 : RandomSpawner
{
	DropItem "PlasMachineGun"
	DropItem "PulseRifle"
	DropItem "PlasmaBeam"
	DropItem "IonBlaster"
	DropItem "Repeater"
}

ACTOR DuelWeaponSpawner5 : RandomSpawner
{
	DropItem "IDMPlasmaGun"
	DropItem "PulseRifle"
	DropItem "PlasmaBeam"
	DropItem "IDMRailgun"
}

ACTOR WeaponSpawner6 : RandomSpawner
{
	DropItem "QuadShotgun"
	DropItem "HandCannon"
	DropItem "IDMMinigun"
	DropItem "Stinger"
	DropItem "MyoosicMaker"
	DropItem "HellstormCannon"
	DropItem "Devastator"
	DropItem "BarrelGun"
	DropItem "FreezeThrower"
	DropItem "WidePlasmagun"
	DropItem "InsanePlasmaArray"
	DropItem "IDMBFG9000"
	DropItem "IDMBloodScourge"
	DropItem "IDMWraithVerge"
	DropItem "IDMQuietus"
	DropItem "Unmaker"
	DropItem "IDMBFG10K"
	DropItem "IDMMace"
	DropItem "Meowitzer"
	DropItem "IDMFlamethrower"
	DropItem "IDMPyroCannon"
	DropItem "IDMHeatWave"
	DropItem "IDMSigil"
	DropItem "Devastator1000"
	DropItem "Redeemer"
}

ACTOR DuelWeaponSpawner6 : RandomSpawner
{
	DropItem "QuadShotgun"
	DropItem "Stinger"
	DropItem "HellstormCannon"
	DropItem "IDMBFG9000"
	DropItem "IDMBloodScourge"
	DropItem "Unmaker"
	DropItem "IDMMace"
	DropItem "IDMPyroCannon"
	DropItem "IDMSigil"
}

ACTOR CellShockSpawner : RandomSpawner
{
	DropItem "IDMPlasmaGun"
	DropItem "PlasMachineGun"
	DropItem "IDMRailgun"
	DropItem "PulseRifle"
	DropItem "PlasmaBeam"
	DropItem "IonBlaster"
	DropItem "Repeater"
}

ACTOR BigPointBlankWeaponSpawner : RandomSpawner
{
	DropItem "QuadShotgun"
	DropItem "HandCannon"
}

ACTOR BigBulletHellWeaponSpawner : RandomSpawner
{
	DropItem "IDMMinigun"
	DropItem "Stinger"
	DropItem "MyoosicMaker"
}

ACTOR BigBlockBusterWeaponSpawner : RandomSpawner
{
	DropItem "HellstormCannon"
	DropItem "Devastator"
	DropItem "BarrelGun"
}

ACTOR BigCellShockWeaponSpawner : RandomSpawner
{
	DropItem "FreezeThrower"
	DropItem "WidePlasmagun"
	DropItem "InsanePlasmaArray"
}

ACTOR WeaponSpawnActor1 : CustomInventory 82
{
	Tag "Common Weapon Spawner 1"
	//$Category Weapons
	//$Sprite SGN2A0
	+NOGRAVITY
	States
	{
	Spawn:
	  TNT1 A 0
	  TNT1 A 1
	  TNT1 A 1 A_JumpIf(ACS_NamedExecuteWithResult("GunModifierSpawn") == 666,"Nothing")
	  TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("BigGunSpawn") == true,"BigGun")
	  TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("WeaponGroupSpawn") == 1,"ShotGun")
	  TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("WeaponGroupSpawn") == 2,"BulletGun")
	  TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("WeaponGroupSpawn") == 3,"ExplGun")
	  TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("WeaponGroupSpawn") == 4,"PlasmaGun")
	  TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("DuelSpawn") == true,"Duel")
	  TNT1 A 1 A_SpawnItemEx("WeaponSpawner1")
	Nothing:
	  TNT1 A 1
	  Stop
	BigGun:
	  TNT1 A 1 A_SpawnItemEx("WeaponSpawner6")
	  Stop
	Duel:
	ShotGun:
	  TNT1 A 1 A_SpawnItemEx("DuelWeaponSpawner1")
	  Stop
	BulletGun:
	  TNT1 A 1 A_SpawnItemEx("WeaponSpawner3")
	  Stop
	ExplGun:
	  TNT1 A 1 A_SpawnItemEx("WeaponSpawner4")
	  Stop
	PlasmaGun:
	  TNT1 A 1 A_SpawnItemEx("CellShockSpawner")
	  Stop
	}
}

ACTOR WeaponSpawnActor2 : CustomInventory replaces Shotgun
{
	Tag "Common Weapon Spawner 2"
	//$Category Weapons
	//$Sprite SHOTA0
	+NOBLOCKMAP
	+NOGRAVITY
	States
	{
	Spawn:
	  TNT1 A 0
	  TNT1 A 1
	  TNT1 A 1 A_JumpIf(ACS_NamedExecuteWithResult("GunModifierSpawn") == 666,"Nothing")
	  TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("BigGunSpawn") == true,"BigGun")
	  TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("WeaponGroupSpawn") == 1,"ShotGun")
	  TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("WeaponGroupSpawn") == 2,"BulletGun")
	  TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("WeaponGroupSpawn") == 3,"ExplGun")
	  TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("WeaponGroupSpawn") == 4,"PlasmaGun")
	  TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("DuelSpawn") == true,"Duel")
	  TNT1 A 1 A_SpawnItemEx("WeaponSpawner2")
	Nothing:
	  TNT1 A 1
	  Stop
	BigGun:
	  TNT1 A 1 A_SpawnItemEx("WeaponSpawner6")
	  Stop
	ShotGun:
	  TNT1 A 1 A_SpawnItemEx("DuelWeaponSpawner1")
	  Stop
	BulletGun:
	  TNT1 A 1 A_SpawnItemEx("WeaponSpawner3")
	  Stop
	ExplGun:
	  TNT1 A 1 A_SpawnItemEx("WeaponSpawner4")
	  Stop
	PlasmaGun:
	  TNT1 A 1 A_SpawnItemEx("CellShockSpawner")
	  Stop
	Duel:
	  TNT1 A 1 A_SpawnItemEx("DuelWeaponSpawner2")
	  Stop
	}
}

ACTOR WeaponSpawnActor3 : CustomInventory replaces Chaingun
{
	Tag "Bullet Weapon Spawner"
	//$Category Weapons
	//$Sprite MGUNA0
	+NOBLOCKMAP
	+NOGRAVITY
	States
	{
	Spawn:
	  TNT1 A 0
	  TNT1 A 1
	  TNT1 A 1 A_JumpIf(ACS_NamedExecuteWithResult("GunModifierSpawn") == 666,"Nothing")
	  TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("BigGunSpawn") == true,"BigGun")
	  TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("WeaponGroupSpawn") == 1,"ShotGun")
	  TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("WeaponGroupSpawn") == 2,"BulletGun")
	  TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("WeaponGroupSpawn") == 3,"ExplGun")
	  TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("WeaponGroupSpawn") == 4,"PlasmaGun")
	  TNT1 A 1 A_SpawnItemEx("WeaponSpawner3")
	Nothing:
	  TNT1 A 1
	  Stop
	BigGun:
	  TNT1 A 1 A_SpawnItemEx("WeaponSpawner6")
	  Stop
	ShotGun:
	  TNT1 A 1 A_SpawnItemEx("DuelWeaponSpawner1")
	  Stop
	BulletGun:
	  TNT1 A 1 A_SpawnItemEx("WeaponSpawner3")
	  Stop
	ExplGun:
	  TNT1 A 1 A_SpawnItemEx("WeaponSpawner4")
	  Stop
	PlasmaGun:
	  TNT1 A 1 A_SpawnItemEx("CellShockSpawner")
	  Stop
	}
}

ACTOR WeaponSpawnActor4 : CustomInventory replaces RocketLauncher
{
	Tag "Explosive Weapon Spawner"
	//$Category Weapons
	//$Sprite LAUNA0
	+NOBLOCKMAP
	+NOGRAVITY
	States
	{
	Spawn:
	  TNT1 A 0
	  TNT1 A 1
	  TNT1 A 1 A_JumpIf(ACS_NamedExecuteWithResult("GunModifierSpawn") == 666,"Nothing")
	  TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("BigGunSpawn") == true,"BigGun")
	  TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("WeaponGroupSpawn") == 1,"ShotGun")
	  TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("WeaponGroupSpawn") == 2,"BulletGun")
	  TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("WeaponGroupSpawn") == 3,"ExplGun")
	  TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("WeaponGroupSpawn") == 4,"PlasmaGun")
	  TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("DuelSpawn") == true,"Duel")
	  TNT1 A 1 A_SpawnItemEx("WeaponSpawner4")
	Nothing:
	  TNT1 A 1
	  Stop
	BigGun:
	  TNT1 A 1 A_SpawnItemEx("WeaponSpawner6")
	  Stop
	ShotGun:
	  TNT1 A 1 A_SpawnItemEx("DuelWeaponSpawner1")
	  Stop
	BulletGun:
	  TNT1 A 1 A_SpawnItemEx("WeaponSpawner3")
	  Stop
	ExplGun:
	  TNT1 A 1 A_SpawnItemEx("WeaponSpawner4")
	  Stop
	PlasmaGun:
	  TNT1 A 1 A_SpawnItemEx("CellShockSpawner")
	  Stop
	Duel:
	  TNT1 A 1 A_SpawnItemEx("DuelWeaponSpawner4")
	  Stop
	}
}

ACTOR WeaponSpawnActor5 : CustomInventory replaces PlasmaRifle
{
	Tag "Plasma Weapon Spawner"
	//$Category Weapons
	//$Sprite PLASA0
	+NOBLOCKMAP
	+NOGRAVITY
	States
	{
	Spawn:
	  TNT1 A 0
	  TNT1 A 1
	  TNT1 A 1 A_JumpIf(ACS_NamedExecuteWithResult("GunModifierSpawn") == 666,"Nothing")
	  TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("BigGunSpawn") == true,"BigGun")
	  TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("WeaponGroupSpawn") == 1,"ShotGun")
	  TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("WeaponGroupSpawn") == 2,"BulletGun")
	  TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("WeaponGroupSpawn") == 3,"ExplGun")
	  TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("WeaponGroupSpawn") == 4,"PlasmaGun")
	  TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("DuelSpawn") == true,"Duel")
	  TNT1 A 1 A_SpawnItemEx("WeaponSpawner5")
	Nothing:
	  TNT1 A 1
	  Stop
	BigGun:
	  TNT1 A 1 A_SpawnItemEx("WeaponSpawner6")
	  Stop
	ShotGun:
	  TNT1 A 1 A_SpawnItemEx("DuelWeaponSpawner1")
	  Stop
	BulletGun:
	  TNT1 A 1 A_SpawnItemEx("WeaponSpawner3")
	  Stop
	ExplGun:
	  TNT1 A 1 A_SpawnItemEx("WeaponSpawner4")
	  Stop
	PlasmaGun:
	  TNT1 A 1 A_SpawnItemEx("CellShockSpawner")
	  Stop
	Duel:
	  TNT1 A 1 A_SpawnItemEx("DuelWeaponSpawner5")
	  Stop
	}
}

ACTOR WeaponSpawnActor6 : CustomInventory replaces BFG9000
{
	Tag "Big Weapon Spawner"
	//$Category Weapons
	//$Sprite BFUGA0
	+NOBLOCKMAP
	+NOGRAVITY
	States
	{
	Spawn:
	  TNT1 A 0
	  TNT1 A 1
	  TNT1 A 1 A_JumpIf(ACS_NamedExecuteWithResult("GunModifierSpawn") == 666,"Nothing")
	  TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("WeaponGroupSpawn") == 1,"ShotGun")
	  TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("WeaponGroupSpawn") == 2,"BulletGun")
	  TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("WeaponGroupSpawn") == 3,"ExplGun")
	  TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("WeaponGroupSpawn") == 4,"PlasmaGun")
	  TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("DuelSpawn") == true,"Duel")
	  TNT1 A 1 A_SpawnItemEx("WeaponSpawner6")
	Nothing:
	  TNT1 A 1
	  Stop
	ShotGun:
	  TNT1 A 1 A_SpawnItemEx("BigPointBlankWeaponSpawner")
	  Stop
	BulletGun:
	  TNT1 A 1 A_SpawnItemEx("BigBulletHellWeaponSpawner")
	  Stop
	ExplGun:
	  TNT1 A 1 A_SpawnItemEx("BigBlockBusterWeaponSpawner")
	  Stop
	PlasmaGun:
	  TNT1 A 1 A_SpawnItemEx("BigCellShockWeaponSpawner")
	  Stop
	Duel:
	  TNT1 A 1 A_SpawnItemEx("DuelWeaponSpawner6")
	  Stop
	}
}