ACTOR ArmorBonusRandomizer : RandomSpawner
{
	DropItem "FragGrenadeAmmo" 168 7
	DropItem "BarBonus1" 178 5
	DropItem "BarBonus2" 168 5
	DropItem "BarBonus3" 198 6
}

ACTOR HealthBonusRandomizer : RandomSpawner
{
	DropItem "FragGrenadeAmmo" 168 8
	DropItem "DrinkBonus1" 178 5
	DropItem "DrinkBonus2" 168 4
	DropItem "DrinkBonus3" 198 7
}

ACTOR HealthBonusRandomizer2 : RandomSpawner
{
	DropItem "FragGrenadeAmmo" 168 8
	DropItem "DroppedBonus1" 178 5
	DropItem "DroppedBonus2" 168 4
	DropItem "DroppedBonus3" 198 7
}

Actor HealthBonusSpawner : CustomInventory replaces HealthBonus
	{
	+LOOKALLAROUND
	States
	{
	Spawn:
		TNT1 A 1 A_Look
		Loop
	See:
	Spawner1:
		DDMG A 0 A_JumpIfInTargetInventory("SpeedItem",1,"TimeSpawner1")
	    TNT1 A 0 A_CheckFlag("DROPPED", "Spawner2", AAPTR_DEFAULT)
		TNT1 A 0 A_SpawnItem("HealthBonusRandomizer")
		TNT1 A 1 A_NoBlocking
		Stop
	Spawner2:
		TNT1 A 0 A_SpawnItem("HealthBonusRandomizer2")
		TNT1 A 1 A_NoBlocking
		Stop
	TimeSpawner1:
        TNT1 A 0 A_CheckFlag("DROPPED", "TimeSpawner2", AAPTR_DEFAULT)
		TNT1 A 0 A_SpawnItem("HardHealthBonusRandomizer")
		TNT1 A 1 A_NoBlocking
		Stop
	TimeSpawner2:
		TNT1 A 0 A_SpawnItem("HardHealthBonusRandomizer2")
		TNT1 A 1 A_NoBlocking
		Stop
	}
}

Actor ArmorBonusSpawner : CustomInventory replaces ArmorBonus
	{
	+LOOKALLAROUND
	States
	{
	Spawn:
		TNT1 A 1 A_Look
		Loop
	See:
	Spawner1:
		DDMG A 0 A_JumpIfInTargetInventory("SpeedItem",1,"TimeSpawner1")
	    TNT1 A 0 A_CheckFlag("DROPPED", "Spawner2", AAPTR_DEFAULT)
		TNT1 A 0 A_SpawnItem("ArmorBonusRandomizer")
		TNT1 A 1 A_NoBlocking
		Stop
	Spawner2:
		TNT1 A 0 A_SpawnItem("HealthBonusRandomizer2")
		TNT1 A 1 A_NoBlocking
		Stop
	TimeSpawner1:
        TNT1 A 0 A_CheckFlag("DROPPED", "TimeSpawner2", AAPTR_DEFAULT)
		TNT1 A 0 A_SpawnItem("HardArmorBonusRandomizer")
		TNT1 A 1 A_NoBlocking
		Stop
	TimeSpawner2:
		TNT1 A 0 A_SpawnItem("HardHealthBonusRandomizer2")
		TNT1 A 1 A_NoBlocking
		Stop
	}
}

Actor GreenArmorSpawner : CustomInventory replaces GreenArmor
	{
	+LOOKALLAROUND
	States
	{
	Spawn:
		TNT1 A 1 A_Look
		Loop
	See:
	Spawner:
		DDMG A 0 A_JumpIfInTargetInventory("SpeedItem",1,"TimeSpawner")
		TNT1 A 0 A_SpawnItem("HQSecVest")
		TNT1 A 1 A_NoBlocking
		Stop
	TimeSpawner:
		TNT1 A 0 A_SpawnItem("InjectorAmmo")
		TNT1 A 1 A_NoBlocking
		Stop
       }
}

Actor BlueArmorSpawner : CustomInventory replaces BlueArmor
	{
	+LOOKALLAROUND
	States
	{
	Spawn:
		TNT1 A 1 A_Look
		Loop
	See:
	Spawner:
		DDMG A 0 A_JumpIfInTargetInventory("SpeedItem",1,"TimeSpawner")
		TNT1 A 0 A_SpawnItem("HQKevlar")
		TNT1 A 1 A_NoBlocking
		Stop
	TimeSpawner:
		TNT1 A 0 A_SpawnItem("InjectorAmmo")
		TNT1 A 1 A_NoBlocking
		Stop
       }
}

actor Slot3SmallAmmoRandomizer : RandomSpawner
{
        DropItem "ShellAmmoMag"
        DropItem "MagnumAmmoMag"
}

actor Slot3LargeAmmoRandomizer : RandomSpawner
{
        DropItem "ShellAmmoBox"
        DropItem "MagnumAmmoBox"
}

actor Slot5SmallAmmoRandomizer : RandomSpawner
{
        DropItem "FlareAmmoMag"
        DropItem "STXBundle"
        DropItem "ThumperAmmoMag"
}

actor Slot5LargeAmmoRandomizer : RandomSpawner
{
        DropItem "FlareAmmoBox"
        DropItem "STXBundle"
        DropItem "ThumperAmmoBox"
}

actor Slot5WeaponRandomizer : RandomSpawner
{
        DropItem "FlareAmmoMag"
        DropItem "STXBundle"
}

actor Slot3WeaponRandomizer : RandomSpawner
{
        DropItem "ThumperAmmoMag"
        DropItem "STXBundle"
}

actor Slot6WeaponRandomizer : RandomSpawner
{
        DropItem "LMGAmmoMag"
        DropItem "HQARifle"
}

actor Slot6LargeAmmoRandomizer : RandomSpawner
{
        DropItem "LMGAmmoBox"
        DropItem "BigRocketMag"
}

Actor ChainsawSpawner : CustomInventory replaces Chainsaw
	{
	+LOOKALLAROUND
	States
	{
	Spawn:
		TNT1 A 1 A_Look
		Loop
	See:
	Spawner1:
		TNT1 A 0 A_JumpIfInTargetInventory("HQMallet",1,"Spawner2")
		TNT1 A 0 A_JumpIfInTargetInventory("HQSledgehammer",1,"Spawner2")
		TNT1 A 0 A_SpawnItem("HQSledgehammer")
		TNT1 A 1 A_NoBlocking
		Stop
	Spawner2:
		TNT1 A 0 A_JumpIfInTargetInventory("HQMagnum",1,"Spawner3")
		TNT1 A 0 A_SpawnItem("HQMagnum")
		TNT1 A 1 A_NoBlocking
		Stop
	Spawner3:
		TNT1 A 0 A_Jump(80,"Spawner4")
		TNT1 A 0 A_SpawnItem("MagnumAmmoMag")
		TNT1 A 1 A_NoBlocking
		Stop
	Spawner4:
		TNT1 A 0 A_SpawnItem("MagnumAmmo2")
		TNT1 A 1 A_NoBlocking
		Stop
	}
}

Actor PistolSpawner : CustomInventory replaces Pistol
	{
	+LOOKALLAROUND
	States
	{
	Spawn:
		TNT1 A 1 A_Look
		Loop
	See:
	Spawner1:
		TNT1 A 0 A_JumpIfInTargetInventory("HQPistols",1,"Spawner2")
		TNT1 A 0 A_SpawnItem("HQPistols")
		TNT1 A 1 A_NoBlocking
		Stop
	Spawner2:
		TNT1 A 0 A_SpawnItem("PistolAmmoMag")
		TNT1 A 1 A_NoBlocking
		Stop
	}
}

Actor ShotgunSpawner : CustomInventory replaces Shotgun
	{
	+LOOKALLAROUND
	States
	{
	Spawn:
		TNT1 A 1 A_Look
		Loop
	See:
	Spawner1:
		TNT1 A 0 A_JumpIfInTargetInventory("HQShotGun",1,"Spawner2")
		TNT1 A 0 A_SpawnItem("HQShotGun")
		TNT1 A 1 A_NoBlocking
		Stop
	Spawner2:
		TNT1 A 0 A_SpawnItem("ShellAmmoMag")
		TNT1 A 1 A_NoBlocking
		Stop
	}
}

Actor ChaingunSpawner : CustomInventory replaces Chaingun
	{
	+LOOKALLAROUND
	States
	{
	Spawn:
		TNT1 A 1 A_Look
		Loop
	See:
	Spawner1:
		TNT1 A 0 A_JumpIfInTargetInventory("HQUzis",1,"Spawner2")
		TNT1 A 0 A_SpawnItem("HQUzis")
		TNT1 A 1 A_NoBlocking
		Stop
	Spawner2:
	    TNT1 A 0 A_CheckFlag("DROPPED", "Spawner3", AAPTR_DEFAULT)
		TNT1 A 0 A_Jump(80,"Spawner4")
		TNT1 A 0 A_SpawnItem("PistolAmmoMag")
		TNT1 A 1 A_NoBlocking
		Stop
	Spawner3:
		TNT1 A 0 A_SpawnItem("PistolAmmoMag")
		TNT1 A 1 A_NoBlocking
		Stop
	Spawner4:
		TNT1 A 0 A_SpawnItem("PistolAmmo2")
		TNT1 A 1 A_NoBlocking
		Stop
	}
}

Actor SSGSpawner : CustomInventory replaces SuperShotgun
	{
	+LOOKALLAROUND
	States
	{
	Spawn:
		TNT1 A 1 A_Look
		Loop
	See:
	Spawner1:
	    TNT1 A 0 A_CheckFlag("DROPPED", "Spawner2", AAPTR_DEFAULT)
		TNT1 A 0 A_JumpIfInTargetInventory("HQFunGun",1,"Spawner3")
		TNT1 A 0 A_SpawnItem("HQFunGun")
		TNT1 A 1 A_NoBlocking
		Stop
	Spawner2:
		TNT1 A 0 A_SpawnItem("Slot3WeaponRandomizer")
		TNT1 A 1 A_NoBlocking
		Stop
	Spawner3:
		TNT1 A 0 A_Jump(80,"Spawner4")
		TNT1 A 0 A_SpawnItem("Slot3WeaponRandomizer")
		TNT1 A 1 A_NoBlocking
		Stop
	Spawner4:
		TNT1 A 0 A_SpawnItem("ShellAmmo2")
		TNT1 A 1 A_NoBlocking
		Stop
	}
}

Actor RocketSpawner : CustomInventory replaces RocketLauncher
	{
	+LOOKALLAROUND
	States
	{
	Spawn:
		TNT1 A 1 A_Look
		Loop
	See:
	Spawner1:
	    TNT1 A 0 A_CheckFlag("DROPPED", "Spawner2", AAPTR_DEFAULT)
		TNT1 A 0 A_JumpIfInTargetInventory("HQBatKiller",1,"Spawner3")
		TNT1 A 0 A_SpawnItem("HQBatKiller")
		TNT1 A 1 A_NoBlocking
		Stop
	Spawner2:
		TNT1 A 0 A_SpawnItem("Slot5WeaponRandomizer")
		TNT1 A 1 A_NoBlocking
		Stop
	Spawner3:
		TNT1 A 0 A_Jump(80,"Spawner4")
		TNT1 A 0 A_SpawnItem("Slot5WeaponRandomizer")
		TNT1 A 1 A_NoBlocking
		Stop
	Spawner4:
		TNT1 A 0 A_SpawnItem("ThumperAmmo2")
		TNT1 A 1 A_NoBlocking
		Stop
	}
}

Actor PlasmaSpawner : CustomInventory replaces PlasmaRifle
	{
	+LOOKALLAROUND
	States
	{
	Spawn:
		TNT1 A 1 A_Look
		Loop
	See:
	Spawner1:
		TNT1 A 0 A_JumpIfInTargetInventory("HQARifle",1,"Spawner2")
	    TNT1 A 0 A_CheckFlag("DROPPED", "Spawner3", AAPTR_DEFAULT)
		TNT1 A 0 A_SpawnItem("HQARifle")
		TNT1 A 1 A_NoBlocking
		Stop
	Spawner2:
	    TNT1 A 0 A_CheckFlag("DROPPED", "Spawner3", AAPTR_DEFAULT)
		TNT1 A 0 A_JumpIfInTargetInventory("HQSlugthrower",1,"Spawner4")
		TNT1 A 0 A_SpawnItem("HQSlugthrower")
		TNT1 A 1 A_NoBlocking
		Stop
	Spawner3:
		TNT1 A 0 A_SpawnItem("LMGAmmoMag")
		TNT1 A 1 A_NoBlocking
		Stop
	Spawner4:
		TNT1 A 0 A_Jump(80,"Spawner5")
		TNT1 A 0 A_SpawnItem("LMGAmmoMag")
		TNT1 A 1 A_NoBlocking
		Stop
	Spawner5:
		TNT1 A 0 A_SpawnItem("FlareAmmo2")
		TNT1 A 1 A_NoBlocking
		Stop
	}
}

Actor BFGSpawner : CustomInventory replaces BFG9000
	{
	+LOOKALLAROUND
	States
	{
	Spawn:
		TNT1 A 1 A_Look
		Loop
	See:
	Spawner1:
		TNT1 A 0 A_JumpIfInTargetInventory("HQLMG",1,"Spawner2")
		TNT1 A 0 A_SpawnItem("HQLMG")
		TNT1 A 1 A_NoBlocking
		Stop
	Spawner2:
	    TNT1 A 0 A_CheckFlag("DROPPED", "Spawner3", AAPTR_DEFAULT)
	    TNT1 A 0 A_JumpIfInTargetInventory("HQBazooka",1,"Spawner4")
		TNT1 A 0 A_SpawnItem("HQBazooka")
		TNT1 A 1 A_NoBlocking
		Stop
	Spawner3:
		TNT1 A 0 A_SpawnItem("LMGAmmoBox")
		TNT1 A 1 A_NoBlocking
		Stop
	Spawner4:
		TNT1 A 0 A_Jump(80,"Spawner5")
		TNT1 A 0 A_SpawnItem("LMGAmmoBox")
		TNT1 A 1 A_NoBlocking
		Stop
	Spawner5:
		TNT1 A 0 A_SpawnItem("LMGAmmo2")
		TNT1 A 1 A_NoBlocking
		Stop
	}
}

Actor SmallShellSpawner : CustomInventory replaces Shell
	{
	+LOOKALLAROUND
	States
	{
	Spawn:
		TNT1 A 1 A_Look
		Loop
	See:
	Spawner1:
		TNT1 A 0 A_JumpIfInTargetInventory("HQMagnum",1,"Spawner2")
		TNT1 A 0 A_SpawnItem("ShellAmmoMag")
		TNT1 A 1 A_NoBlocking
		Stop
	Spawner2:
		TNT1 A 0 A_JumpIfInTargetInventory("HQShotGun",1,"Spawner3")
		TNT1 A 0 A_SpawnItem("MagnumAmmoMag")
		TNT1 A 1 A_NoBlocking
		Stop
	Spawner3:
		TNT1 A 0 A_SpawnItem("Slot3SmallAmmoRandomizer")
		TNT1 A 1 A_NoBlocking
		Stop
	}
}

Actor LargeShellSpawner : CustomInventory replaces ShellBox
	{
	+LOOKALLAROUND
	States
	{
	Spawn:
		TNT1 A 1 A_Look
		Loop
	See:
	Spawner1:
		TNT1 A 0 A_JumpIfInTargetInventory("HQMagnum",1,"Spawner2")
		TNT1 A 0 A_SpawnItem("ShellAmmoBox")
		TNT1 A 1 A_NoBlocking
		Stop
	Spawner2:
		TNT1 A 0 A_JumpIfInTargetInventory("HQShotGun",1,"Spawner3")
		TNT1 A 0 A_SpawnItem("MagnumAmmoBox")
		TNT1 A 1 A_NoBlocking
		Stop
	Spawner3:
		TNT1 A 0 A_SpawnItem("Slot3LargeAmmoRandomizer")
		TNT1 A 1 A_NoBlocking
		Stop
	}
}

Actor SmallRocketSpawner : CustomInventory replaces RocketAmmo
	{
	+LOOKALLAROUND
	States
	{
	Spawn:
		TNT1 A 1 A_Look
		Loop
	See:
	Spawner1:
		TNT1 A 0 A_JumpIfInTargetInventory("HQFunGun",1,"Spawner2")
		TNT1 A 0 A_SpawnItem("FlareAmmoMag")
		TNT1 A 1 A_NoBlocking
		Stop
	Spawner2:
		TNT1 A 0 A_JumpIfInTargetInventory("HQBatKiller",1,"Spawner3")
		TNT1 A 0 A_SpawnItem("ThumperAmmoMag")
		TNT1 A 1 A_NoBlocking
		Stop
	Spawner3:
		TNT1 A 0 A_SpawnItem("Slot5SmallAmmoRandomizer")
		TNT1 A 1 A_NoBlocking
		Stop
	}
}

Actor LargeRocketSpawner : CustomInventory replaces RocketBox
	{
	+LOOKALLAROUND
	States
	{
	Spawn:
		TNT1 A 1 A_Look
		Loop
	See:
	Spawner1:
		TNT1 A 0 A_JumpIfInTargetInventory("HQFunGun",1,"Spawner2")
		TNT1 A 0 A_SpawnItem("FlareAmmoBox")
		TNT1 A 1 A_NoBlocking
		Stop
	Spawner2:
		TNT1 A 0 A_JumpIfInTargetInventory("HQBatKiller",1,"Spawner3")
		TNT1 A 0 A_SpawnItem("ThumperAmmoBox")
		TNT1 A 1 A_NoBlocking
		Stop
	Spawner3:
		TNT1 A 0 A_SpawnItem("Slot5LargeAmmoRandomizer")
		TNT1 A 1 A_NoBlocking
		Stop
	}
}

Actor LargeCellSpawner : CustomInventory replaces CellPack
	{
	+LOOKALLAROUND
	States
	{
	Spawn:
		TNT1 A 1 A_Look
		Loop
	See:
	Spawner1:
		TNT1 A 0 A_JumpIfInTargetInventory("HQBazooka",1,"Spawner2")
		TNT1 A 0 A_SpawnItem("LMGAmmoBox")
		TNT1 A 1 A_NoBlocking
		Stop
	Spawner2:
		TNT1 A 0 A_SpawnItem("Slot6LargeAmmoRandomizer")
		TNT1 A 1 A_NoBlocking
		Stop
	}
}

Actor BlurSpawner : CustomInventory replaces Blursphere
	{
	+LOOKALLAROUND
	States
	{
	Spawn:
		TNT1 A 1 A_Look
		Loop
	See:
	Spawner1:
		TNT1 A 0 A_JumpIfInTargetInventory("HQMRE",1,"Spawner2")
		TNT1 A 0 A_SpawnItem("HQMREPickup")
		TNT1 A 1 A_NoBlocking
		Stop
	Spawner2:
		TNT1 A 0 A_SpawnItem("InjectorAmmo")
		TNT1 A 1 A_NoBlocking
		Stop
	}
}

Actor MegaSpawner : CustomInventory replaces Megasphere
	{
	+LOOKALLAROUND
	States
	{
	Spawn:
		TNT1 A 1 A_Look
		Loop
	See:
	Spawner1:
		DDMG A 0 A_JumpIfInTargetInventory("SpeedItem",1,"Spawner2")
		TNT1 A 0 A_JumpIfInTargetInventory("ExtraLife",1,"Spawner2")
		TNT1 A 0 A_SpawnItem("HQRevive")
		TNT1 A 1 A_NoBlocking
		Stop
	Spawner2:
		TNT1 A 0 A_SpawnItem("IvySerum")
		TNT1 A 1 A_NoBlocking
		Stop
	}
}