// =============================================================================
//
// XV117 Monster Expansion 1.2
//
// Random Spawner
//
// =============================================================================
/*Actor SergeantSpawner : BasicWeaponPickup Replaces Shotgunguy
{
States
    {
	 Spawn:
		TNT1 A 0
		TNT1 A 1
		TNT1 A 0 A_Jump(3, "SuperShotgunZombie", "Major") 
		TNT1 A 0 A_Jump(3, "PyroSergeant") 
		TNT1 A 0 A_Jump(15, "RiotShieldGuy") 
		TNT1 A 0 A_Jump(10, "EliteSergeant") 
	ShotgunGuy1:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("ShotgunGuy1",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop		
	RiotShieldGuy:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("RiotShieldGuy",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop		
	EliteSergeant:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("ASGGuy",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop	
	SuperShotgunZombie:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("SuperShotgunZombie",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop
	PyroSergeant:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("PyroSergeant",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop
	Major:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("Major",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop
		}
}

Actor PossessedSpawner : BasicWeaponPickup Replaces Zombieman
{
States
    {
	 Spawn:
		TNT1 A 0
		TNT1 A 1
		TNT1 A 0 A_Jump(1, "RocketGuy") 
		TNT1 A 0 A_Jump(2, "Major") 
		TNT1 A 0 A_Jump(10, "RiotShieldGuy") 
		TNT1 A 0 A_Jump(5, "ChainsawZombie") 
		TNT1 A 0 A_Jump(5, "MinigunGuy") 
	RifleZombie:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("RifleZombie",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop		
	MinigunGuy:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("MinigunGuy",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop		
	ChainsawZombie:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("ChainsawZombie",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop	
	Major:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("Major",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop
	RiotShieldGuy:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("RiotShieldGuy",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop
	RocketGuy:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("RocketGuy",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop
	}
}

Actor CommandoSpawner : BasicWeaponPickup Replaces Chaingunguy
{
States
    {
	 Spawn:
		TNT1 A 0
		TNT1 A 1
		TNT1 A 0 A_Jump(3, "PyroSergeant") 
		TNT1 A 0 A_Jump(5, "RocketGuy") 
		TNT1 A 0 A_Jump(15, "ZSpecOpsPreset") 
		TNT1 A 0 A_Jump(15, "Major") 
		TNT1 A 0 A_Jump(10, "PlasmaZombie") 
		TNT1 A 0 A_Jump(25, "RifleCommando") 
	ChaingunGuy1:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("ChaingunGuy1",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop		
	RifleCommando:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("RifleCommando",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop		
	Major:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("Major",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop
	PlasmaZombie:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("PlasmaZombie",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop	
	ZSpecOpsPreset: //Mini-Randomizer for Zombified-Special Operatives (ZSpec Ops)
		TNT1 A 0 A_Jump(50, "StealthZSpecOps") // Invisible Z-Spec Ops
	ZSpecOps:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("ZSpecOps",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop	
	StealthZSpecOps:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("XVStealthZSpecOps",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop	
	RocketGuy:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("RocketGuy",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop
	PyroSergeant:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("PyroSergeant",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop	
		}
}

Actor BaronSpawner : BasicWeaponPickup //Replaces BaronofHell
{
States
    {
	 Spawn:
		TNT1 A 0
		TNT1 A 0 A_JumpIf(x == 304, "ReplaceForBoss1")
		TNT1 A 0 A_JumpIf(x == 528, "ReplaceForBoss2")
		TNT1 A 1
		TNT1 A 0 ACS_NamedExecuteAlways("BruiserOFC")
		TNT1 A 0 ACS_NamedExecuteAlways("BruiserMaybe")
		TNT1 A 0 A_Jump(7, "PyroDemon") // Pyro Demon Preset
		TNT1 A 0 A_Jump(9, "GoodbyeBabe") // Terminator Demon Preset
		TNT1 A 0 A_Jump(10, "SuperBaron") // Bruiser Demon Preset
		TNT1 A 0 A_Jump(15, "CyberneticDemon") // Cybernetized version of Baron of Hell (Aka Mini-Cyberdemon)
	Baron:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("BaronofHell2",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop
	HellspawnOFC:
		TNT1 A 0 A_Jump(256, "PyroDemon")
		Stop
	HellspawnMaybe:
		TNT1 A 0 A_Jump(125, "PyroDemon")
		goto Baron
	CyberneticDemon:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("CyberBaron",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop
	SuperBaron:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("BruiserDemon",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop		
	PyroDemon:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("PyroDemon",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop	
	GoodbyeBabe:
		TNT1 A 0 A_JumpIf((CeilingZ - FloorZ) < 85,"Baron")
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("TerminatorDemon",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop	
		
	ReplaceForBoss1:
		TNT1 A 0 A_NoBlocking
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("BaronBoss1",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG ,tid)
		TNT1 A 10 
		TNT1 A 1 A_BossDeath
		TNT1 A 0 A_Fall
		Stop	
		
	ReplaceForBoss2:
		TNT1 A 0 A_NoBlocking
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("BaronBoss2",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG ,tid)
		TNT1 A 10 
		TNT1 A 1 A_BossDeath
		Stop	
		}
}

Actor RevenantSpawner : BasicWeaponPickup //Replaces Revenant
{
States
    {
	 Spawn:
		TNT1 A 0
		TNT1 A 1
		TNT1 A 0 A_Jump(3, "Incarnate") 
	Revenant:
		TNT1 A 0 A_JumpIf((CeilingZ - FloorZ) < 60,"Mummy")
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("Revenant1",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop		
	Incarnate:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("Incarnate",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop	
		
	Mummy:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("BDMummy",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop		
		}
}


Actor SpiderSpawner : BasicWeaponPickup //Replaces Arachnotron
{
States
    {
	 Spawn:
		TNT1 A 0
		TNT1 A 1
		TNT1 A 0 A_Jump(10, "SuperArachnotron") // Overpowered Arachnotron
		TNT1 A 0 A_Jump(35, "Aracnorb") // Flying Mind
	Arachnotron:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("Arachnotron1",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop		
	Aracnorb:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("Aracnorb",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop	
	SuperArachnotron:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("Arachnotron2",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop		
		}
}

Actor KnightSpawner : BasicWeaponPickup //Replaces HellKnight
{
States
    {
	 Spawn:
		TNT1 A 0
		TNT1 A 1
		TNT1 A 0 ACS_NamedExecuteAlways("BruiserOFC")
		TNT1 A 0 ACS_NamedExecuteAlways("BruiserMaybe")
		TNT1 A 0 A_Jump(15, "CyberKnight") // Cyber-Hell Knight		
		TNT1 A 0 A_Jump(35, "Satyr") // Satyr Preset
	HellKnight:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("HellKnight2",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop
	HellspawnOFC:
		TNT1 A 0 A_Jump(256, "SuperBaron")
		Stop
	HellspawnMaybe:
		TNT1 A 0 A_Jump(125, "SuperBaron")
		goto HellKnight
		
	SuperBaron:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("BruiserDemon",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop	
	CyberKnight:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("CyberKnight",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop	
	Satyr:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("Satyr",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop		
		}
}
*/
Actor LostsoulSpawner : BasicWeaponPickup Replaces LostSoul
{
States
    {
	 Spawn:
		TNT1 A 0
		TNT1 A 1
		TNT1 A 0 A_Jump(50, "Trite") // DOOM 3 Trite
		TNT1 A 0 A_Jump(50, "Fleshspawn") 
	LostSoul:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("TehLostSoul",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop		
	Fleshspawn:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("Fleshspawn",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop	
	Trite:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("D3Trite",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		TNT1 A 0 A_SpawnItemEx ("D3Trite",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop		
		}
}


Actor HerdSpawner : BasicWeaponPickup
{
States
    {
	 Spawn:
		TNT1 A 0
		TNT1 A 1
		TNT1 A 0 A_Jump(127, "Fleshspawn") 
	LostSoul:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("TehLostSoul",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		TNT1 A 0 A_SpawnItemEx ("TehLostSoul",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		TNT1 A 0 A_SpawnItemEx ("TehLostSoul",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop		
	Fleshspawn:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("Fleshspawn",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		TNT1 A 0 A_SpawnItemEx ("Fleshspawn",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		TNT1 A 0 A_SpawnItemEx ("Fleshspawn",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		TNT1 A 0 A_SpawnItemEx ("Fleshspawn",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		}
}

Actor TritesSpawner
{
States
    {
	 Spawn:
		TNT1 A 0
		TNT1 A 1
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("D3Trite",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		TNT1 A 0 A_SpawnItemEx ("D3Trite",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop		
		}
}

Actor DarkImpSpawner
{
States
    {
	 Spawn:
		TNT1 A 0
		TNT1 A 1
		TNT1 A 0 A_Jump(20, "NetherDarkImp", "VoidDarkImp") // Nether/Void Dark Imp
		TNT1 A 0 A_Jump(40, "NamiDarkImp") // Nami Dark Imp
		TNT1 A 0 A_Jump(256, "CommonDarkImp") // Common Dark Imp
		Loop	
	CommonDarkImp:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("DarkImp",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop	
	NamiDarkImp:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("NamiDarkImp",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop	
	NetherDarkImp:
		TNT1 A 0 A_JumpIf((CeilingZ - FloorZ) < 70,"NamiDarkImp")
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("NetherDarkImp",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop	
	VoidDarkImp:
		TNT1 A 0 A_JumpIf((CeilingZ - FloorZ) < 70,"NamiDarkImp")
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("VoidDarkImp",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop	
		}
}

/*
Actor ImpSpawner Replaces DoomImp
{
States
    {
	 Spawn:
		TNT1 A 0
		TNT1 A 1
		TNT1 A 0 A_Jump(30, "DarkImpSpawner") // Dark Imp Spawner
	CommonImp:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("Imp",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop		
	Shadow:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("Shadow",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop		
	DarkImpSpawner:
		TNT1 A 0 A_Jump(10, "NetherDarkImp") // Nether Dark Imp
		TNT1 A 0 A_Jump(10, "VoidDarkImp") // Void Dark Imp
		TNT1 A 0 A_Jump(30, "NamiDarkImp") // Nami Dark Imp
		TNT1 A 0 A_Jump(256, "CommonDarkImp") // Common Dark Imp
		Loop	
	CommonDarkImp:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("DarkImp",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop	
	NamiDarkImp:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("NamiDarkImp",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop	
	NetherDarkImp:
		TNT1 A 0 A_JumpIf((CeilingZ - FloorZ) < 70,"NamiDarkImp")
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("NetherDarkImp",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop	
	VoidDarkImp:
		TNT1 A 0 A_JumpIf((CeilingZ - FloorZ) < 70,"NamiDarkImp")
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("VoidDarkImp",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop	
		}
}

*/
Actor SpectreSpawner : BasicWeaponPickup Replaces Spectre
{
States
    {
	 Spawn:
		TNT1 A 0
		TNT1 A 1
		TNT1 A 0 A_Jump(50, "Wraith") // DOOM 3 Wraith
	Spectre:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("Spectro",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop		
	Wraith:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("D3Wraith",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		TNT1 A 0 A_SpawnItemEx ("D3Trite",-2,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		TNT1 A 0 A_SpawnItemEx ("D3Trite",2,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		TNT1 A 0 A_SpawnItemEx ("D3Trite",2,2,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop	
		}
}

/*Actor DemonSpawner : BasicWeaponPickup //Replaces Demon
{
States
    {
	 Spawn:
		TNT1 A 0
		TNT1 A 1
		TNT1 A 0 A_Jump(15, "BloodDemon") 
	Demon:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("BullDemon",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop		
	BloodDemon:
		TNT1 A 0 A_JumpIf((CeilingZ - FloorZ) < 70,"Demon")
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("BloodDemon",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop	
		}
}


Actor CyberDemonSpawner : BasicWeaponPickup Replaces CyberDemon
{
States
    {
	 Spawn:
		TNT1 A 0
		TNT1 A 1
		TNT1 A 0 A_Jump(80, "SuperDemon") // Super Demon (Aka Uncybernetized Cyber Demon)
		TNT1 A 0 A_Jump(30, "Belphegor")
	CyberDemon:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("TheCyberdemon",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop		
	SuperDemon:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("SuperDemon",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop	
	Belphegor:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("Belphegor2",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop	
	Terminator:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("TerminatorBoss",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop		
		}
}
*/

Actor SMGGuy2 : SMGGuy {}
Actor SMGGuySpawner : BasicWeaponPickup Replaces SMGGuy
{
States
    {
	 Spawn:
		TNT1 A 0
		TNT1 A 1
		TNT1 A 0 A_Jump(20, "ZSpecOps") // ZSpec Ops Preset
	SMGGuy:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("SMGGuy2",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop		
	ZSpecOps:
		TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("ZSpecOps",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG | SXF_TRANSFERPOINTERS ,0, tid)
		Stop	
		}
}

/*
////SPECIAL LITDOOM SPAWNERS

//LESS FORMER HUMANS
Actor LessZombiemen : Randomspawner
{
dropitem "PossessedSpawner"
dropitem "Imp"
dropitem "FleshSpawn"
}

Actor LessSergeants : Randomspawner
{
dropitem "SergeantSpawner"
dropitem "SergeantSpawner"
dropitem "FleshSpawn"
dropitem "TehLostSoul"
dropitem "BullDemon"
dropitem "Impspawner"
}

Actor LessCommandos : Randomspawner
{
dropitem "CommandoSpawner"
dropitem "CommandoSpawner"
dropitem "DarkImp"
dropitem "Impspawner"
dropitem "Aracnorb"
dropitem "BullDemon"
}


/*
/// TIERED RANDOMIZER
Actor Tier1Mob : RandomSpawner
{
dropitem "PossessedSpawner"
dropitem "PossessedSpawner"
dropitem "PossessedSpawner"
dropitem "ImpSpawner"
dropitem "ImpSpawner"
dropitem "FleshSpawn"
dropitem "FleshSpawn"
dropitem "BullDemon"
dropitem "Tier2Mob"
}

Actor Tier2Mob : RandomSpawner
{
dropitem "SergeantSpawner"
dropitem "SergeantSpawner"
dropitem "SergeantSpawner"
dropitem "PossessedSpawner"
dropitem "PossessedSpawner"
dropitem "ImpSpawner"
dropitem "ImpSpawner"
dropitem "ImpSpawner"
dropitem "TehLostSoul"
dropitem "BullDemon"
dropitem "BullDemon"
dropitem "BullDemon"
dropitem "Tier3Mob"
}

Actor Tier3Mob : RandomSpawner
{
dropitem "SergeantSpawner"
dropitem "CommandoSpawner"
dropitem "CommandoSpawner"
dropitem "ImpSpawner"
dropitem "DarkImpSpawner"
dropitem "DemonSpawner"
dropitem "DemonSpawner"
dropitem "RevenantSpawner"
dropitem "RevenantSpawner"
dropitem "KnightSpawner"
}

Actor FlyingMob : RandomSpawner
{
dropitem "Cacodemon_"
dropitem "Aracnorb"
dropitem "Cacodemon_"
Dropitem "Cacodemon_"
dropitem "HerdSpawner"
dropitem "HerdSpawner"
dropitem "PainElemental1"
}

Actor Tier4Mob : RandomSpawner
{
dropitem "KnightSpawner"
dropitem "KnightSpawner"
dropitem "BaronSpawner"
dropitem "Mancubus"
dropitem "SpiderSpawner"
}

//// SUBTLE RANDOMIZER
Actor SubtleRandomZombie : RandomSpawner
{
dropitem "PossessedSpawner"
dropitem "PossessedSpawner"
dropitem "PossessedSpawner"
dropitem "Tier1Mob"
}

Actor SubtleRandomSergeant : RandomSpawner
{
dropitem "SergeantSpawner"
dropitem "SergeantSpawner"
dropitem "SergeantSpawner"
dropitem "Tier1Mob"
}