// Chaingun Spawn

ACTOR ChaingunSpawnActor : CustomInventory 10012
{
	Tag "Chaingun (Insanity)"
	//$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("ChaingunSpawner")
	Nothing:
	  TNT1 A 1
	  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 ChaingunSpawner : RandomSpawner
{
	DropItem "IDMChaingun"
}


// Nailgun Spawn

ACTOR NailgunSpawnActor : CustomInventory 10013
{
	Tag "Nailgun"
	//$Category Weapons
	//$Sprite NLMGE0
	+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("NailgunSpawner")
	Nothing:
	  TNT1 A 1
	  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 NailgunSpawner : RandomSpawner
{
	DropItem "Nailgun"
}


// Super Chaingun Spawn

ACTOR SuperChaingunSpawnActor : CustomInventory 10014
{
	Tag "Super Chaingun"
	//$Category Weapons
	//$Sprite SCHAA0
	+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("SuperChaingunSpawner")
	Nothing:
	  TNT1 A 1
	  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 SuperChaingunSpawner : RandomSpawner
{
	DropItem "SuperChaingun"
}


// Super Nailgun Spawn

ACTOR SuperNailgunSpawnActor : CustomInventory 10015
{
	Tag "Super Nailgun"
	//$Category Weapons
	//$Sprite NLMGF0
	+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("SuperNailgunSpawner")
	Nothing:
	  TNT1 A 1
	  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 SuperNailgunSpawner : RandomSpawner
{
	DropItem "SuperNailgun"
}


// Heavy Machinegun Spawn

ACTOR HeavyMachinegunSpawnActor : CustomInventory 10016
{
	Tag "Heavy Machinegun"
	//$Category Weapons
	//$Sprite HVMGW0
	+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("HeavyMachinegunSpawner")
	Nothing:
	  TNT1 A 1
	  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 HeavyMachinegunSpawner : RandomSpawner
{
	DropItem "HeavyMachinegun"
}


// Assault Rifle Spawn

ACTOR AssaultRifleSpawnActor : CustomInventory 10017
{
	Tag "Assault Rifle"
	//$Category Weapons
	//$Sprite AK4IA0
	+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("AssaultRifleSpawner")
	Nothing:
	  TNT1 A 1
	  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 AssaultRifleSpawner : RandomSpawner
{
	DropItem "AssaultRifle"
}


// Minigun Spawn

ACTOR MinigunSpawnActor : CustomInventory 10031
{
	Tag "Minigun (Insanity)"
	//$Category Weapons
	//$Sprite MNGNA0
	+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("MinigunSpawner")
	Nothing:
	  TNT1 A 1
	  TNT1 A -1
	  Stop
	BigGun:
	  TNT1 A 1 A_SpawnItemEx("WeaponSpawner6")
	  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
	}
}

ACTOR MinigunSpawner : RandomSpawner
{
	DropItem "IDMMinigun"
}


// Stinger Spawn

ACTOR StingerSpawnActor : CustomInventory 10097
{
	Tag "Stinger"
	//$Category Weapons
	//$Sprite STINA0
	+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("StingerSpawner")
	Nothing:
	  TNT1 A 1
	  TNT1 A -1
	  Stop
	BigGun:
	  TNT1 A 1 A_SpawnItemEx("WeaponSpawner6")
	  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
	}
}

ACTOR StingerSpawner : RandomSpawner
{
	DropItem "Stinger"
}


// Myoosic Maker Spawn

ACTOR MyoosicMakerSpawnActor : CustomInventory 10058
{
	Tag "Myoosic Maker"
	//$Category Weapons
	//$Sprite MOUPA0
	+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("MyoosicMakerSpawner")
	Nothing:
	  TNT1 A 1
	  TNT1 A -1
	  Stop
	BigGun:
	  TNT1 A 1 A_SpawnItemEx("WeaponSpawner6")
	  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
	}
}

ACTOR MyoosicMakerSpawner : RandomSpawner
{
	DropItem "MyoosicMaker"
}