//Rank 2 Mid Tier: Nemesis (priority 550 - 650)

ACTOR INFNemesisImp : NemesisImp Replaces NemesisImp2
{
Tag "\c[v9]Nemesis Imp\c-"
States
{
  VexedSpawn:
	NSIN H 3 Bright A_Pain
	NSIN H 0 A_PlaySoundEx("brain/spit",7,0,2)
	NSIN HHHHHHHHHHHHHHHHH 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NSIN HHHHHHHHHHHHHHHHH 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NSIN HHHHHHHHHHHHHHHHH 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	TNT1 A 0 A_SpawnItemEx("NemesisLightning")
	NSIN HHHHHHHHHHHH 2 Bright A_SpawnItemEx("VexedNemesisFlameSpawner")
	TNT1 A 0 A_SpawnItemEx("INFVexedNemesisImp",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TELEFRAG)
	TNT1 A 1
	Stop
  VexedSpawn2:
	NSI2 H 3 Bright A_Pain
	NSI2 H 0 A_PlaySoundEx("brain/spit",7,0,2)
	NSI2 HHHHHHHHHHHHHHHHH 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NSI2 HHHHHHHHHHHHHHHHH 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NSI2 HHHHHHHHHHHHHHHHH 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	TNT1 A 0 A_SpawnItemEx("NemesisLightning")
	NSI2 HHHHHHHHHHHH 2 Bright A_SpawnItemEx("VexedNemesisFlameSpawner")
	TNT1 A 0 A_SpawnItemEx("INFVexedNemesisImp",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 1
	Stop
	}
}

ACTOR INFNemesisImp2 : INFNemesisImp
{
Tag "\c[v9]Nemesis Imp\c-"
States
{
  Spawn:
    TNT1 A 0 
    TNT1 A 0 A_Jump(160,"Remove")
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("SimpleProgSys") == 0,2)
    TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("RuneTier2SpawnCheck") == 2,1)
	Goto Remove
  Idle:
	TNT1 A 0 A_JumpIf(user_phase2 == 1,"Idle2")
	NSIN A 10 Bright A_Look
	TNT1 A 0 A_SpawnItem("NemesisHellionSmokeSpawner",0,0,0,0)
	NSIN Q 10 Bright A_Look
	TNT1 AA 0 A_SpawnItem("NemesisHellionSmokeSpawner",0,0,0,0)
	Loop
  Remove:
	TNT1 A 1
	TNT1 A 0 A_SpawnItemEx("ImpSpawnerLiter",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 A_ChangeFlag("COUNTKILL", FALSE)
	TNT1 A 0
	Stop
	}
}

//Nemesis Soul

ACTOR INFNemesisSoul : RandomSpawner
{
DropItem "NemesisSoul", 256, 1
}

//Nemesis Revolver Zombie

ACTOR NemesisRevolverZombie2 : NemesisRevolverZombie
{
Tag "\c[g3]Nemesis Revolver Zombie\c-"
States
{
  Spawn:
    TNT1 A 0
    TNT1 A 0 A_Jump(160,"Remove")
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("SimpleProgSys") == 0,2)
    TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("RuneTier2SpawnCheck") == 2,1)
	Goto Remove
    TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("NexusDJBPistolSpawn") == 1, "Remove2")
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("NexusDJBPistolSpawn") == 2, "SpawnBoth")
  Idle:
	TNT1 A 0 A_SpawnItem("NemesisHellionSmokeSpawner",0,0,0,0)
    NGRZ A 10 Bright A_Look
    TNT1 A 0 A_SpawnItem("NemesisHellionSmokeSpawner",0,0,0,0)
    NGR9 A 10 Bright A_Look
    TNT1 A 0 A_SpawnItem("NemesisHellionSmokeSpawner",0,0,0,0)
    Loop
  Remove:
	TNT1 A 1
	TNT1 A 0 A_SpawnItemEx("Zombieman",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 A_ChangeFlag("COUNTKILL", FALSE)
	TNT1 A 0
	Stop
  Remove2:
	TNT1 A 1
	TNT1 A 0 A_SpawnItemEx("NemesisCowboy",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 A_ChangeFlag("COUNTKILL", FALSE)
	TNT1 A 0
	Stop
  SpawnBoth:
    TNT1 A 1
    TNT1 A 0 A_SpawnItemEx("NemesisPistolSpawner",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
    TNT1 A 0 A_ChangeFlag("COUNTKILL", FALSE)
    TNT1 A 0
    Stop
	}
}

//Nemesis Cowboy

ACTOR NemesisCowboy2 : NemesisCowboy
{
Tag "\c[g3]Nemesis Cowboy\c-"
States
{
  Spawn:
    TNT1 A 0
    TNT1 A 0 A_Jump(160,"Remove")
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("SimpleProgSys") == 0,2)
    TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("RuneTier2SpawnCheck") == 2,1)
	Goto Remove
  Idle:
	TNT1 A 0 A_SpawnItem("NemesisHellionSmokeSpawner",0,0,0,0)
    NWGU A 10 Bright A_Look
	TNT1 A 0 A_SpawnItem("NemesisHellionSmokeSpawner",0,0,0,0)
	NWGU A 10 Bright A_Look
	TNT1 A 0 A_SpawnItem("NemesisHellionSmokeSpawner",0,0,0,0)
    Loop
  Remove:
	TNT1 A 1
	TNT1 A 0 A_SpawnItemEx("Zombieman",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 A_ChangeFlag("COUNTKILL", FALSE)
	TNT1 A 0
	Stop
	}
}

ACTOR INFNemesisZombie : NemesisZombie Replaces NemesisZombie2
{
Tag "\c[v9]Nemesis Zombie\c-"
States
{
  VexedSpawn:
	NSZO G 3 Bright A_Pain
	NSZO G 0 A_PlaySoundEx("brain/spit",7,0,2)
	NSZO GGGGGGGGGGGGGGGGG 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NSZO GGGGGGGGGGGGGGGGG 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NSZO GGGGGGGGGGGGGGGGG 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	TNT1 A 0 A_SpawnItemEx("NemesisLightning")
	NSZO GGGGGGGGGGGG 2 Bright A_SpawnItemEx("VexedNemesisFlameSpawner")
	TNT1 A 0 A_SpawnItemEx("INFVexedNemesisZombie",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TELEFRAG)
	TNT1 A 1
	Stop	
	}
}

ACTOR INFNemesisZombie2 : INFNemesisZombie
{
Tag "\c[v9]Nemesis Zombie\c-"
States
{
  Spawn:
    TNT1 A 0 
    TNT1 A 0 A_Jump(160,"Remove")
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("SimpleProgSys") == 0,2)
    TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("RuneTier2SpawnCheck") == 2,1)
	Goto Remove
  Idle:
	NSZO A 10 Bright A_Look
	TNT1 A 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
	NSZI A 10 Bright A_Look
	TNT1 AA 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
	Loop
  Remove:
	TNT1 A 1
	TNT1 A 0 A_SpawnItemEx("ZombieSpawnerLiter",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 A_ChangeFlag("COUNTKILL", FALSE)
	TNT1 A 0
	Stop
	}
}

//Chameleon

ACTOR Chameleon2 : Chameleon
{
Tag "\c[z3]C\c- \c[b5]H\c- \c[g3]A\c- \c[s4]M\c- \c[h1]E\c- \c[t5]L\c- \c[z3]E\c- \c[h9]O\c- \c[t5]N\c-"
States
{
  Spawn:
    TNT1 A 0 
    TNT1 A 0 A_Jump(180,"Remove")
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("SimpleProgSys") == 0,2)
    TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("RuneTier2SpawnCheck") == 2,1)
	Goto Remove
  Idle:
    TNT1 A 0 A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
    LPOS A 10 Bright A_Look
	TNT1 A 0 A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
	LPOS Q 10 Bright A_Look
	TNT1 A 0 A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
    Loop
  Remove:
	TNT1 A 1
	TNT1 A 0 A_SpawnItemEx("ZombieSpawnerLiter",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 A_ChangeFlag("COUNTKILL", FALSE)
	TNT1 A 0
	Stop
	}
}

//Nemesis Bandit

ACTOR NemesisBandit2 : NemesisBandit
{
Tag "\c[g3]Nemesis Bandit\c-"
States
{
  Spawn:
    TNT1 A 0 
    TNT1 A 0 A_Jump(160,"Remove")
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("SimpleProgSys") == 0,2)
    TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("RuneTier2SpawnCheck") == 2,1)
	Goto Remove
  Idle:
	NB3A A 10 Bright A_Look
	TNT1 A 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
	Loop
  Remove:
	TNT1 A 1
	TNT1 A 0 A_SpawnItemEx("ZombieSpawnerLiter",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 A_ChangeFlag("COUNTKILL", FALSE)
	TNT1 A 0
	Stop
	}
}

ACTOR INFNemesisAssaultCaptain : NemesisAssaultCaptain Replaces NemesisAssaultCaptain2
{
Tag "\c[v9]Nemesis Assault Captain\c-"
States
{
  VexedSpawn:
	NASG G 3 Bright A_Pain
	NASG G 0 A_PlaySoundEx("brain/spit",7,0,2)
	NASG GGGGGGGGGGGGGGGGG 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NASG GGGGGGGGGGGGGGGGG 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NASG GGGGGGGGGGGGGGGGG 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	TNT1 A 0 A_SpawnItemEx("NemesisLightning")
	NASG GGGGGGGGGGGG 2 Bright A_SpawnItemEx("VexedNemesisFlameSpawner")
	TNT1 A 0 A_SpawnItemEx("INFVexedNemesisAssaultCaptain",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TELEFRAG)
	TNT1 A 1
	Stop
	}
}

ACTOR INFNemesisAssaultCaptain2 : INFNemesisAssaultCaptain
{
Tag "\c[v9]Nemesis Assault Captain\c-"
States
{
  Spawn:
    TNT1 A 0 
    TNT1 A 0 A_Jump(160,"Remove")
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("SimpleProgSys") == 0,2)
    TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("RuneTier2SpawnCheck") == 2,1)
	Goto Remove
  Idle:
	NASG A 10 Bright A_Look
	TNT1 A 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
	NASG "Z" 10 Bright A_Look
	TNT1 AA 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
	Loop
  Remove:
	TNT1 A 1
	TNT1 A 0 A_SpawnItemEx("ShotgunSpawnerLiter",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 A_ChangeFlag("COUNTKILL", FALSE)
	TNT1 A 0
	Stop
	}
}

//Nemesis Lieutenant

ACTOR NemesisLieutenant2 : NemesisLieutenant
{
Tag "\c[g3]Nemesis Lieutenant\c-"
States
{
  Spawn:
    TNT1 A 0 
    TNT1 A 0 A_Jump(160,"Remove")
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("SimpleProgSys") == 0,2)
    TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("RuneTier2SpawnCheck") == 2,1)
	Goto Remove
  SpawnLoop:
    NSZX A 10 Bright A_Look
	TNT1 A 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
	NSZX A 10 Bright A_Look
	TNT1 AA 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
	Loop
  Remove:
	TNT1 A 1
	TNT1 A 0 A_SpawnItemEx("ShotgunSpawnerLiter",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 A_ChangeFlag("COUNTKILL", FALSE)
	TNT1 A 0
	Stop
	}
}

//Nemesis Phase Imp

ACTOR INFNemesisPhaseImp2 : NemesisPhaseImp
{
Tag "\c[g3]Nemesis Phase Imp\c-"
States
{
  Spawn:
    TNT1 A 0 
    TNT1 A 0 A_Jump(160,"Remove")
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("SimpleProgSys") == 0,2)
    TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("RuneTier2SpawnCheck") == 2,1)
	Goto Remove
  Idle:
	TNT1 A 0 A_SpawnItem("NemesisHellionSmokeSpawner",0,0,0,0)
	NPI9 A 10 A_Look
	Loop
  Remove:
	TNT1 A 1
	TNT1 A 0 A_SpawnItemEx("ImpSpawnerLiter",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 A_ChangeFlag("COUNTKILL", FALSE)
	TNT1 A 0
	Stop
	}
}

ACTOR INFNemesisSuperShotgunZombie : NemesisSuperShotgunZombie Replaces NewNemesisSuperShotgunZombie
{
Tag "\c[v9]Nemesis Super Shotgun Zombie\c-"
var int user_deathtimer;
var int user_deathtimeractive;
States
{
  See:
	TNT1 A 0 A_JumpIf(user_deathtimeractive == 1,3)
	TNT1 A 0 ACS_NamedExecuteAlways("NemesisDeathTimerForVexed",0)
	TNT1 A 0 A_SetUserVar("user_deathtimeractive",1)
	TNT1 A 0 A_JumpIf(user_music == 1,3)
	TNT1 A 0 ACS_NamedExecuteAlways("StartMonsterMusic",0,768)
	TNT1 A 0 A_SetUserVar("user_music",1)
    TNT1 A 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
    NZSG A 0 A_JumpIfTargetInLOS("Strafing")
    NZSG AA 3 Bright A_Chase
	TNT1 A 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
	NZSG BB 3 Bright A_Chase
	TNT1 A 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
	TNT1 A 0 A_SpawnItem("FootStep",0,0,0,0)
	NZSG A 0 A_JumpIfTargetInLOS("Strafing")
	NZSG CC 3 Bright A_Chase
	TNT1 A 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
	NZSG DD 3 Bright A_Chase
	TNT1 A 0 A_Jump(20,"Teleport")
	TNT1 A 0 A_Jump(80,"Rush")
    TNT1 A 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
	TNT1 A 0 A_SpawnItem("FootStep",0,0,0,0)
	TNT1 A 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
    Loop
  Teleport:
	NZSG A 1 Bright A_UnSetShootable
	TNT1 AAAA 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
	NZSG AAAAAAAAAA 1 Bright A_FadeOut(0.1,0)
	NZSG A 2 Bright
	TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Wander
	TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Wander
	NZSG A 1 Bright A_PlayWeaponSound("boss/teleport")
	TNT1 AAAA 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
	NZSG AAAAAAAAAA 1 Bright A_FadeIn(0.1)
	NZSG A 1 Bright A_SetShootable
	Goto See 
  Reload:
	NZSG E 3 Bright A_GiveInventory("NemesisLegZombieStrafing",1)
	TNT1 A 0 A_GiveInventory("NemesisLegZombieStrafing",1)
	NZSG E 6 Bright A_PlaySound("NemesisSSG/Open")
	NZSG EEEE 1 Bright 
	TNT1 A 0 A_GiveInventory("NemesisLegZombieStrafing",1)
	TNT1 A 0 A_SpawnItemEx("NemesisShellCasing", -8, 6, 36, Random(2, 6), 0, Random(1, 3), Random(-80, -90), 128)
	NZSG E 1 Bright A_SpawnItemEx("NemesisShellCasing", -10, 6, 36, Random(2, 6), 0, Random(1, 3), Random(-80, -90), 128)
	NZSG E 6 Bright A_PlaySound("NemesisSSG/Load")
	NZSG EEEE 1 Bright
	TNT1 A 0 A_GiveInventory("NemesisLegZombieStrafing",1)
	NZSG E 6 Bright A_PlaySound("NemesisSSG/Close")
	NZSG EEEE 1 Bright
	TNT1 A 0 A_GiveInventory("NemesisLegZombieStrafing",1)
	NZSG E 6 Bright A_CPosRefire
	Goto See
  NemNade:
	NZSG E 0 Bright A_JumpIfCloser(280,"Missile")
    NZSG E 12 Bright A_GiveInventory("NemesisLegZombieStrafing",1)
    NZSG EEE 6 Bright A_GiveInventory("NemesisLegZombieStrafing",1)
	TNT1 A 0 Bright A_GiveInventory("NemesisLegZombieStrafing",1)
    NZSG E 6 Bright A_CustomMissile("NemesisGrenade2",32,0,0,2,4)
	NZSG EE 25 Bright
	Goto See
  Death:
    TNT1 A 0 A_Jump(36,"LegendarySoul")
    TNT1 A 0 A_StopSound(6)
	TNT1 A 0 A_JumpIfInTargetInventory("TrueLegendaryRuneItem",1,"VexedSpawn")
	TNT1 A 0 A_JumpIfInTargetInventory("TrueLegendaryRuneItem2",1,"VexedSpawn")
	TNT1 A 0 A_JumpIf(user_deathtimer <= 10,"VexedSpawn")
	NZSG H 5 A_Scream
    NZSG I 5 A_Fall
    NZSG J 5 A_SpawnItem("BodyCrash",0,0,0,0)
    NZSG K 5
	TNT1 A 0 A_Jump(100,"MoreStuff")
    NZSG L -1 
	Stop
  XDeath:
	TNT1 A 0 A_StopSound(6)
	TNT1 A 0 A_JumpIfInTargetInventory("TrueLegendaryRuneItem",1,"VexedSpawn")
	TNT1 A 0 A_JumpIfInTargetInventory("TrueLegendaryRuneItem2",1,"VexedSpawn")
	TNT1 A 0 A_JumpIf(user_deathtimer <= 10,"VexedSpawn")	
	NASG O 5 A_SpawnItemEx("NemesisGibbedGenerator",0,0,0,0,0,0,0,128,0)
	NASG P 5 A_XScream
	NASG Q 5 A_Fall
	NASG RSTUV 5
	TNT1 A 0 A_Jump(100,"MoreStuff2")
	NASG W -1
	Stop
  VexedSpawn:
	NZSG G 3 Bright A_Pain
	NZSG G 0 A_PlaySoundEx("brain/spit",7,0,2)
	NZSG GGGGGGGGGGGGGGGGG 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NZSG GGGGGGGGGGGGGGGGG 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NZSG GGGGGGGGGGGGGGGGG 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	TNT1 A 0 A_SpawnItemEx("NemesisLightning")
	NZSG GGGGGGGGGGGG 2 Bright A_SpawnItemEx("VexedNemesisFlameSpawner")
	TNT1 A 0 A_SpawnItemEx("INFVexedNemesisSuperShotgunZombie",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TELEFRAG)
	TNT1 A 1
	Stop
	}
}

ACTOR INFNemesisSuperShotgunZombie2 : INFNemesisSuperShotgunZombie
{
Tag "\c[v9]Nemesis Super Shotgun Zombie\c-"
States
{
  Spawn:
    TNT1 A 0 
    TNT1 A 0 A_Jump(180,"Remove")
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("SimpleProgSys") == 0,2)
    TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("RuneTier2SpawnCheck") == 2,1)
	Goto Remove
  Idle:
    TNT1 A 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
    NZSG A 10 Bright A_Look
	TNT1 A 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
	NZSI A 10 Bright A_Look
	TNT1 A 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
    Loop
  Remove:
	TNT1 A 1
	TNT1 A 0 A_SpawnItemEx("ShotgunSpawnerLiter",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 A_ChangeFlag("COUNTKILL", FALSE)
	TNT1 A 0
	Stop
	}
}

ACTOR INFNemesisCommando : NemesisCommando Replaces NemesisCommando2
{
Tag "\c[v9]Nemesis Commando\c-"
States
{
  VexedSpawn:
	NCOS G 3 Bright A_Pain
	NCOS G 0 A_PlaySoundEx("brain/spit",7,0,2)
	NCOS GGGGGGGGGGGGGGGGG 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NCOS GGGGGGGGGGGGGGGGG 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NCOS GGGGGGGGGGGGGGGGG 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	TNT1 A 0 A_SpawnItemEx("NemesisLightning")
	NCOS GGGGGGGGGGGG 2 Bright A_SpawnItemEx("VexedNemesisFlameSpawner")
	TNT1 A 0 A_SpawnItemEx("INFVexedNemesisCommando",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TELEFRAG)
	TNT1 A 1
	Stop
	}
}

ACTOR INFNemesisCommando2 : INFNemesisCommando
{
Tag "\c[v9]Nemesis Commando\c-"
States
{
  Spawn:
    TNT1 A 0 
    TNT1 A 0 A_Jump(100,"Remove")
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("SimpleProgSys") == 0,2)
    TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("RuneTier2SpawnCheck") == 2,1)
	Goto Remove
  Idle:
	TNT1 A 0 A_SpawnItem("NemesisHellionSmokeSpawner",0,0,0,0)
    NCOS A 10 Bright A_Look
	TNT1 A 0 A_SpawnItem("NemesisHellionSmokeSpawner",0,0,0,0)
	NCOI A 10 Bright A_Look
    Loop
  Remove:
	TNT1 A 1
	TNT1 A 0 A_SpawnItemEx("ChaingunSpawnerLiter",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 A_ChangeFlag("COUNTKILL", FALSE)
	TNT1 A 0
	Stop
	}
}

ACTOR INFNemesisStealthTrooper : NemesisStealthTrooper Replaces NemesisStealthTrooper2
{
Tag "\c[v9]Nemesis Stealth Trooper\c-"
States
{
  VexedSpawn:
	NMST G 3 Bright A_Pain
	NMST G 0 A_PlaySoundEx("brain/spit",7,0,2)
	NMST GGGGGGGGGGGGGGGGG 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NMST GGGGGGGGGGGGGGGGG 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NMST GGGGGGGGGGGGGGGGG 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	TNT1 A 0 A_SpawnItemEx("NemesisLightning")
	NMST GGGGGGGGGGGG 2 Bright A_SpawnItemEx("VexedNemesisFlameSpawner")
	TNT1 A 0 A_SpawnItemEx("INFVexedNemesisStealthTrooper",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TELEFRAG)
	TNT1 A 1
	Stop
	}
}

ACTOR INFNemesisStealthTrooper2 : INFNemesisStealthTrooper
{
Tag "\c[v9]Nemesis Stealth Trooper\c-"
States
{
  Spawn:
    TNT1 A 0 
    TNT1 A 0 A_Jump(100,"Remove")
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("SimpleProgSys") == 0,2)
    TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("RuneTier2SpawnCheck") == 2,1)
	Goto Remove
  Idle:
	TNT1 A 0 A_SetTranslucent(0.5)
	TNT1 A 0 A_SpawnItem("NemesisHellionSmokeSpawner",0,0,0,0)
	NMST A 10 Bright A_Look
	Loop
  Remove:
	TNT1 A 1
	TNT1 A 0 A_SpawnItemEx("ChaingunSpawnerLiter",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 A_ChangeFlag("COUNTKILL", FALSE)
	TNT1 A 0
	Stop
	}
}

//Nemesis General

ACTOR NemesisGeneral2 : NemesisGeneral
{
Tag "\c[g3]Nemesis General\c-"
States
{
  Spawn:
    TNT1 A 0 
    TNT1 A 0 A_Jump(100,"Remove")
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("SimpleProgSys") == 0,2)
    TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("RuneTier2SpawnCheck") == 2,1)
	Goto Remove
  Idle:
	TNT1 A 0 A_SpawnItem("NemesisHellionSmokeSpawner",0,0,0,0)
	NEGE A 10 Bright A_Look
	TNT1 A 0 A_PlayWeaponSound("weapons/bfg15kidle")
	TNT1 A 0 A_SpawnItem("NemesisHellionSmokeSpawner",0,0,0,0)
	NEGE "Z" 10 Bright A_Look
    Loop
  Remove:
	TNT1 A 1
	TNT1 A 0 A_SpawnItemEx("ChaingunSpawnerLiter",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 A_ChangeFlag("COUNTKILL", FALSE)
	TNT1 A 0
	Stop
	}
}

ACTOR INFNemesisRebelSoldier : NemesisRebelSoldier Replaces NemesisRebelSoldier
{
Tag "\c[v9]Nemesis Rebel Soldier\c-"
States
{
  VexedSpawn:
	NCMS G 3 Bright A_Pain
	NCMS G 0 A_PlaySoundEx("brain/spit",7,0,2)
	NCMS GGGGGGGGGGGGGGGGG 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NCMS GGGGGGGGGGGGGGGGG 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NCMS GGGGGGGGGGGGGGGGG 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	TNT1 A 0 A_SpawnItemEx("NemesisLightning")
	VCMS GGGGGGGGGGGG 2 Bright A_SpawnItemEx("VexedNemesisFlameSpawner")
	TNT1 A 0 A_SpawnItemEx("INFVexedNemesisRebelSoldier",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TELEFRAG)
	TNT1 A 1
	Stop
	}
}

ACTOR INFNemesisRebelSoldier2 : INFNemesisRebelSoldier
{
Tag "\c[v9]Nemesis Rebel Soldier\c-"
States
{
  Spawn:
    TNT1 A 0 
    TNT1 A 0 A_Jump(100,"Remove")
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("SimpleProgSys") == 0,2)
    TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("RuneTier2SpawnCheck") == 2,1)
	Goto Remove
  Idle:
	TNT1 A 0 A_SpawnItem("NemesisHellionSmokeSpawner",0,0,0,0)
	NCMS A 10 Bright A_Look
	TNT1 A 0 A_SpawnItem("NemesisHellionSmokeSpawner",0,0,0,0)
	NCMS Z 10 Bright A_Look
	Loop
  Remove:
	TNT1 A 1
	TNT1 A 0 A_SpawnItemEx("ChaingunSpawnerLiter",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 A_ChangeFlag("COUNTKILL", FALSE)
	TNT1 A 0
	Stop
	}
}

ACTOR INFNemesisFiend : NemesisFiend Replaces NemesisFiend2
{
Tag "\c[v9]Nemesis Fiend\c-"
States
{
  VexedSpawn:
	NFND G 3 Bright A_Pain
	NFND G 0 A_PlaySoundEx("brain/spit",7,0,2)
	NFND GGGGGGGGGGGGGGGGG 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NFND GGGGGGGGGGGGGGGGG 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NFND GGGGGGGGGGGGGGGGG 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	TNT1 A 0 A_SpawnItemEx("NemesisLightning")
	NFND GGGGGGGGGGGG 2 Bright A_SpawnItemEx("VexedNemesisFlameSpawner")
	TNT1 A 0 A_SpawnItemEx("INFVexedNemesisFiend",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TELEFRAG)
	TNT1 A 1
	Stop
	}
}

ACTOR INFNemesisFiend2 : INFNemesisFiend
{
Tag "\c[v9]Nemesis Fiend\c-"
States
{
  Spawn:
    TNT1 A 0 
    TNT1 A 0 A_Jump(140,"Remove")
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("SimpleProgSys") == 0,2)
    TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("RuneTier2SpawnCheck") == 2,1)
	Goto Remove
  Idle:
	TNT1 A 0 A_SpawnItem("NemesisHellionSmokeSpawner",0,0,0,0)
	NFND A 12 Bright A_Look
	Loop
  Remove:
	TNT1 A 1
	TNT1 A 0 A_SpawnItemEx("DemonSpawnerLiter",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 A_ChangeFlag("COUNTKILL", FALSE)
	TNT1 A 0
	Stop
	}
}

//Nemesis Uber Commando

ACTOR NemesisUberCommando2 : NemesisUberCommando
{
Tag "\c[v9]Nemesis Uber Commando\c-"
States
{
  Spawn:
    TNT1 A 0 
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("SimpleProgSys") == 0,2)
    TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("RuneTier2SpawnCheck") == 2,1)
	Goto Remove
  Idle:
	NMBC AA 1 A_Look
	TNT1 A 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
	loop
  Remove:
	TNT1 A 1
	TNT1 A 0 A_SpawnItemEx("ChaingunSpawnerLiter",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 A_ChangeFlag("COUNTKILL", FALSE)
	TNT1 A 0
	Stop
	}
}

//Nemesis General Roasterock

ACTOR INFNemesisGeneralRoasterock2 : NemesisGeneralRoasterock
{
Tag "\c[g3]Nemesis General Roasterock\c-"
States
{
  Spawn:
    TNT1 A 0 
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("SimpleProgSys") == 0,2)
    TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("RuneTier2SpawnCheck") == 2,1)
	Goto Remove
  SpawnLoop:
	TNT1 A 0 A_SpawnItem("NemesisHellionSmokeSpawner",0,0,0,0)
    NGRR A 10 A_look
	TNT1 A 0 A_SpawnItem("NemesisHellionSmokeSpawner",0,0,0,0)
	NGRR "Z" 10 A_look
	TNT1 A 0 A_SpawnItem("NemesisHellionSmokeSpawner",0,0,0,0)
	Loop
  Remove:
	TNT1 A 1
	TNT1 A 0 A_SpawnItemEx("ChaingunSpawnerLiter",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 A_ChangeFlag("COUNTKILL", FALSE)
	TNT1 A 0
	Stop
	}
}

//Rank 3 Low-Mid-High Tier: Nemesis (priority 650 - 750)

ACTOR INFNemesisSuicideBomber : NemesisSuicideBomber Replaces NemesisSuicideBomber
{
Tag "\c[g3]Nemesis Suicide Bomber\c-"
States
{
  Spawn:
	TNT1 A 0 NoDelay A_JumpIf(ACS_NamedExecuteWithResult("RawAnger") == 0,"Remove")
  SpawnLoop:
	NSBM A 10 Bright A_Look
	TNT1 A 0 A_SpawnItemEx("NemesisHellionSmokeSpawner",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION,64)
	NSBI A 10 Bright A_Look
	TNT1 A 0 A_SpawnItemEx("NemesisHellionSmokeSpawner",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION,64)
	Loop
  Kill:
	TNT1 A 0 A_Die("Extreme")
	Goto XDeath
  XDeath:
	TNT1 A 0 A_Jump(36,"LegendarySoul")
	//TNT1 A 0 A_Jump(48,"BadIdea")  //causes problems because of the black hole succ
	NSBM M 5 Bright
	NSBM N 5 Bright A_XScream
	NSBM O 5 A_NoBlocking
	NSBM PQRST 5
	TNT1 A 0 A_Jump(100,"MoreStuff")
	NSBM U -1
	Stop
  BadIdea:
	TNT1 A 0 A_SpawnItem("TrueNemesisHellionSmokeSpawner",0,0,0,0)
	NSBM M 5 Bright
	TNT1 A 0 A_SpawnItem("TrueNemesisHellionSmokeSpawner",0,0,0,0)
	NSBM N 5 Bright A_Scream
	TNT1 A 0 A_SpawnItem("TrueNemesisHellionSmokeSpawner",0,0,0,0)
	NSBM O 5 A_Fall
	TNT1 A 0 A_SpawnItem("TrueNemesisHellionSmokeSpawner",0,0,0,0)
	NSBM P 5 A_SpawnItem("BodyCrash",0,0,0,0)
	TNT1 A 0 A_SpawnItem("TrueNemesisHellionSmokeSpawner",0,0,0,0)
	NSBM QRST 5
	NSBM U 175
	TNT1 A 0 A_PlaySoundEx("brain/spit","Voice",0,2)
	NSBM UUUUUUUUUUUUUUU 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NSBM UUUUUUUUUUUUUUU 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NSBM UUUUUUUUUUUUUUU 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NSBM TTTTTTTTTTTTTTT 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NSBM TTTTTTTTTTTTTTT 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NSBM TTTTTTTTTTTTTTT 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NSBM SSSSSSSSSSSSSSS 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NSBM SSSSSSSSSSSSSSS 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NSBM SSSSSSSSSSSSSSS 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NSBM RRRRRRRRRRRRRRR 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NSBM RRRRRRRRRRRRRRR 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NSBM RRRRRRRRRRRRRRR 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NSBM QQQQQQQQQQQQQQQ 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NSBM QQQQQQQQQQQQQQQ 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NSBM QQQQQQQQQQQQQQQ 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NSBM PPPPPPPPPPPPPPP 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NSBM PPPPPPPPPPPPPPP 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NSBM PPPPPPPPPPPPPPP 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NSBM OOOOOOOOOOOOOOO 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NSBM OOOOOOOOOOOOOOO 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NSBM OOOOOOOOOOOOOOO 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NSBM NNNNNNNNNNNNNNN 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NSBM NNNNNNNNNNNNNNN 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NSBM NNNNNNNNNNNNNNN 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NSBM MMMMMMMMMMMMMMM 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NSBM MMMMMMMMMMMMMMM 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NSBM MMMMMMMMMMMMMMM 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	//TNT1 A 0 A_Jump(92,"Death")
	NSBM A 3 Bright
	TNT1 A 0 A_SpawnItemEx("NemesisLightning")
	NSBM AAAAAAAAAAAA 2 Bright A_SpawnItemEx("VexedNemesisFlameSpawner")
	TNT1 A 0 A_SpawnItemEx("INFVexedNemesisSuicideBomber",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 1
	Stop
	}
}

ACTOR INFNemesisSuicideBomber2 : INFNemesisSuicideBomber
{
Tag "\c[g3]Nemesis Suicide Bomber\c-"
States
{
  Spawn:
    TNT1 A 0 
    TNT1 A 0 A_Jump(160,"Remove")
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("RawAnger") == 0,"Remove")
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("SimpleProgSys") == 0,2)
    TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("RuneTier3SpawnCheck") == 2,1)
	Goto Remove
  SpawnLoop:
	NSBM A 10 Bright A_Look
	TNT1 A 0 A_SpawnItemEx("NemesisHellionSmokeSpawner",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION,64)
	NSBI A 10 Bright A_Look
	TNT1 A 0 A_SpawnItemEx("NemesisHellionSmokeSpawner",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION,64)
	Loop
	}
}

ACTOR INFNemesisChainsawZombie : NemesisChainsawZombie Replaces NemesisChainsawZombie2
{
Tag "\c[v9]Nemesis Chainsaw Zombie\c-"
States
{
  VexedSpawn:
	TNT1 A 0
	TNT1 AAA 0 A_StopSound(CHAN_WEAPON)
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("NoVexedBoys") == 1,"LegendarySoul")
	NCSG A 3 Bright A_Pain
	NCSG A 0 A_PlaySoundEx("brain/spit",7,0,2)
	NCSG AAAAAAAAAAAAAAAAA 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NCSG AAAAAAAAAAAAAAAAA 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NCSG AAAAAAAAAAAAAAAAA 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	TNT1 A 0 A_SpawnItemEx("NemesisLightning")
	NCSG AAAAAAAAAAAAAAAAA 2 Bright A_SpawnItemEx("VexedNemesisFlameSpawner")
	TNT1 A 0 A_SpawnItemEx("INFVexedNemesisChainsawZombie",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 A_SpawnItemEx("Sawseverywhere",0,0,16,0,0,0,0,32)
	TNT1 A 1
	Stop
	}
}

ACTOR INFNemesisChainsawZombie2 : INFNemesisChainsawZombie
{
Tag "\c[v9]Nemesis Chainsaw Zombie\c-"
States
{
  Spawn:
    TNT1 A 0 
    TNT1 A 0 A_Jump(225,"Remove")
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("RawAnger") == 0,"Remove")
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("SimpleProgSys") == 0,2)
    TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("RuneTier3SpawnCheck") == 2,1)
	Goto Remove
	TNT1 A 0 A_SetUserVar("user_deathtimer",0)
   Idle:
	NCSZ AX 10 Bright A_Look
	TNT1 A 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
	Loop
	}
}

//Cursed Imp

ACTOR CursedImp2 : CursedImp
{
Tag "\c[p7]Cursed Imp\c-"
States
{
  Spawn:
    TNT1 A 0 
	TNT1 A 0 A_Jump(180,"Remove")
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("SimpleProgSys") == 0,2)
    TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("RuneTier3SpawnCheck") == 2,1)
	Goto Remove
  Idle:
	TNT1 A 0 A_JumpIf(user_phase2 == 1,"Idle2")
	CSIN A 10 Bright A_Look
	TNT1 A 0 A_SpawnItem("CursedHellionSmokeSpawner",0,0,0,0)
	CSIN Q 10 Bright A_Look
	TNT1 AA 0 A_SpawnItem("CursedHellionSmokeSpawner",0,0,0,0)
	Loop
  Remove:
	TNT1 A 1
	TNT1 A 0 A_SpawnItemEx("ImpSpawnerLiter",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 A_ChangeFlag("COUNTKILL", FALSE)
	TNT1 A 0
	Stop
	}
}

//Cursed Zombie

ACTOR CursedZombie2 : CursedZombie
{
Tag "\c[p7]Cursed Zombie\c-"
States
{
  Spawn:
    TNT1 A 0 
	TNT1 A 0 A_Jump(160,"Remove")
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("SimpleProgSys") == 0,2)
    TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("RuneTier3SpawnCheck") == 2,1)
	Goto Remove
  Idle:
	CSZO A 10 Bright A_Look
	TNT1 A 0 A_SpawnItemEx("CursedHellionSmokeSpawner")
	CSZI A 10 Bright A_Look
	TNT1 AA 0 A_SpawnItemEx("CursedHellionSmokeSpawner")
	Loop
  Remove:
	TNT1 A 1
	TNT1 A 0 A_SpawnItemEx("ZombieSpawnerLiter",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 A_ChangeFlag("COUNTKILL", FALSE)
	TNT1 A 0
	Stop
	}
}

//Cursed Revenant

ACTOR INFObliterator : Obliterator Replaces Obliterator
{
Tag "\c[q3]Obliterator\c-"
}

ACTOR INFObliterator2 : INFObliterator
{
Tag "\c[q3]Obliterator\c-"
States
{
  Spawn:
    TNT1 A 0
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("SimpleProgSys") == 0,2)
    TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("RuneTier3SpawnCheck") == 2,1)
	Goto Remove
  Idle:
    OBAR A 7 A_Look
    Loop
  Remove:
    TNT1 A 1
	TNT1 A 0 A_SpawnItemEx("Baronofhell",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 A_ChangeFlag("COUNTKILL", FALSE)
	TNT1 A 0
	Stop
	}
}

ACTOR INFDementedCydestroyer : DementedCydestroyer Replaces DementedCydestroyer
{
DropItem "BossLifeEssence" 256 25
DropItem "BossArmorBonusMax" 256 1
DropItem "GreaterDemonicEnergy" 200 200
DropItem "GreaterPlasmaEnergy" 200
DropItem "BFG10K " 200 
DropItem "Demon Tech BFG10K" 30
DropItem "HellfireUltrasphere" 200
DropItem "Explosive Minigun" 256 1
DropItem "Rocket Launcher" 256
DropItem "HomingRocketLauncher" 200
DropItem "HeavyMissileLauncher" 200
DropItem "Demon Tech Ballista" 200
DropItem "RapidShotgun" 200
DropItem "RapidRocketlauncher" 200
DropItem "EFG9000", 64
DropItem "M79GrenadeLauncher", 96
DropItem "DemonicChalice" 128 1
DropItem "Explosive Shotgun" 200
Tag "\c[o7]Demented\c- Cydestroyer"
}

ACTOR INFDementedCydestroyer2 : INFDementedCydestroyer
{
Tag "\c[o7]Demented\c- Cydestroyer"
States
{
  Spawn:
    TNT1 A 0
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("SimpleProgSys") == 0,2)
    TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("RuneTier3SpawnCheck") == 2,1)
	Goto Remove
  Idle:
	TNT1 A 0 A_JumpIf(user_script == 1,3)
	TNT1 A 0 ACS_NamedExecuteAlways("DementedCydestroyerFire",0)
	TNT1 A 0 A_SetUserVar("user_script",1)
    DCYD AB 2 A_Look
    Loop 
  Remove:
    TNT1 A 1
	TNT1 A 0 A_SpawnItemEx("Baronofhell",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 A_ChangeFlag("COUNTKILL", FALSE)
	TNT1 A 0
	Stop
	}
}

ACTOR INFAtomicSoul : AtomicSoul Replaces AtomicSoul
{
Tag "\c[q7]Atomic \c[g5]Soul\c-"
}

ACTOR INFAtomicSoul2 : INFAtomicSoul
{
Tag "\c[q7]Atomic \c[g5]Soul\c-"
States
{
  Spawn:
    TNT1 A 0
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("NoAtomicSoul") == 1,"Remove")
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("SimpleProgSys") == 0,2)
    TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("RuneTier3SpawnCheck") == 2,1)
	Goto Remove
  Idle:
    TNT1 A 0 A_SpawnItem("AtomicSoulFireSpawner",0,0,0,0)
    ATSO A 2 Bright A_Look
	TNT1 A 0 A_SpawnItem("AtomicSoulFireSpawner",0,0,0,0)
    ATSO A 2 Bright A_Look
	TNT1 A 0 A_SpawnItem("AtomicSoulFireSpawner",0,0,0,0)
    ATSO B 2 Bright A_Look
	TNT1 A 0 A_SpawnItem("AtomicSoulFireSpawner",0,0,0,0)
    ATSO B 2 Bright A_Look
    Loop
	}
}

ACTOR INFNemesisDefiler : NemesisDefiler Replaces NemesisDefiler2
{
Tag "\c[v9]Nemesis Defiler\c-"
States
{
  VexedSpawn:
	NMDF H 3 Bright A_Pain
	TNT1 A 0 A_PlaySound("brain/spit",7)
	TNT1 A 0 A_KillMaster
	NMDF HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	TNT1 A 0 A_SpawnItemEx("NemesisLightning")
	NMDF HHHHHHHHHHHH 2 Bright A_SpawnItemEx("VexedNemesisFlameSpawner")
	TNT1 A 0 A_SpawnItemEx("INFVexedNemesisRedeemer",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TELEFRAG)
	TNT1 A 1
	Stop
	}
}

ACTOR INFNemesisDefiler2 : INFNemesisDefiler
{
Tag "\c[v9]Nemesis Defiler\c-"
States
{
  Spawn:
    TNT1 A 0 
	TNT1 A 0 A_Jump(128,"Remove")
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("SimpleProgSys") == 0,2)
    TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("RuneTier3SpawnCheck") == 2,1)
	Goto Remove
  Idle:
    TNT1 AAA 0 A_SpawnItemEx("NDefilerSmokeSpawner")
    NMDF A 10 Bright A_Look
    Loop
  Remove:
    TNT1 A 1
	TNT1 A 0 A_SpawnItemEx("CacoSpawnerLiter",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 A_ChangeFlag("COUNTKILL", FALSE)
	TNT1 A 0
	Stop
	}
}

//Nemesis Bloodmage

ACTOR NemesisBloodMage2 : NemesisBloodMage
{
Tag "\c[g3]Nemesis Blood Mage\c-"
States
{
  Spawn:
    TNT1 A 0 
    TNT1 A 0 A_Jump(110,"Remove")
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("SimpleProgSys") == 0,2)
    TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("RuneTier3SpawnCheck") == 2,1)
	Goto Remove
  Idle:
	TNT1 A 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
	NEBM A 10 Bright A_Look 
	Loop
	}
}

//Nemesis Redeemer

ACTOR NemesisRedeemer2 : NemesisRedeemer
{
Tag "\c[g3]Nemesis Redeemer\c-"
States
{
  Spawn:
    TNT1 A 0 
    TNT1 A 0 A_Jump(128,"Remove")
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("SimpleProgSys") == 0,2)
    TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("RuneTier3SpawnCheck") == 2,1)
	Goto Remove
  Idle:
    NMZX AAA 0 A_SpawnItem("TrueNemesisHellionSmokeSpawner",0,0,0,0)
    NMZX A 10 Bright A_Look
    Loop
	}
}

ACTOR INFNemesisTormentor : NewNemesisTormentor2 Replaces NewNemesisTormentor2
{
Tag "\c[v9]Nemesis Tormentor\c-"
States
{
  Spawn:
	TNT1 A 0 A_JumpIfInventory("MarineKilled",1,"Taunt")
    TNT1 AAA 0 A_SpawnItemEx("NDefilerSmokeSpawner")
    NPAI A 10 A_Look
    Loop
  Missile:
	TNT1 A 0 A_JumpIfInventory("MarineKilled",1,"Taunt")
	TNT1 A 0 A_JumpIf(user_soul >= 1,3)
	TNT1 A 0 A_Jump(192,2)
	TNT1 A 0 A_JumpIfHealthLower(1500,"SummonSoul")
    TNT1 A 0 A_Jump(140,"CometSpam","LightningBalls","Nova","SmallLaser")
	TNT1 A 0 A_Jump(80,"NemesisSoulProjectile","Laser","Umbra","StormBolt")
  Normal:
    NPAI JJ 5 A_FaceTarget 
    NPAI K 0 A_CustomMissile("NemesisTormentorHadesBall1",92,-40,0,0)
    NPAI K 0 A_CustomMissile("NemesisTormentorHadesBall1",8,-40,0,0)
    NPAI K 0 A_CustomMissile("NemesisTormentorHadesBall1",92,40,0,0)
    NPAI K 0 A_CustomMissile("NemesisTormentorHadesBall1",8,40,0,0)
    NPAI K 0 A_CustomMissile("NemesisTormentorHadesBall2",54,-50,0,0)
    NPAI K 4 A_CustomMissile("NemesisTormentorHadesBall2",54,50,0,0)
    NPAI J 4 A_FaceTarget 
	TNT1 A 0 A_MonsterRefire(128,"See")
	TNT1 A 0 A_Jump(16,"Avoid","CometSpam")
    Goto Normal+2
  SummonSoul2:
	TNT1 A 0 A_SpawnItemEx("INFVexedNemesisSoul",0,0,30,10,0,0,0,SXF_SETMASTER) //CHANGE!?
	NPAI I 30
	Goto See
  Death:
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("NoVexedBoys") == 1,4)
	TNT1 A 0 A_JumpIfInTargetInventory("TrueLegendaryRuneItem",1,"VexedSpawn")
	TNT1 A 0 A_JumpIfInTargetInventory("TrueLegendaryRuneItem2",1,"VexedSpawn")
	TNT1 A 0 A_JumpIf(user_deathtimer <= 15,"VexedSpawn")
	//TNT1 A 0 A_JumpIf(user_soullevel >= 15,"VexedSpawn")
    NPAI M 5 A_Scream
	TNT1 A 0 A_SpawnItemEx("NemesisGibbedGenerator",0,0,0,0,0,0,0,128,0)
    NPAI NNNNNNNNNNNNN 2 A_CustomMissile("NemesisTormentorDeathEffect",0,0,0,CMF_TRACKOWNER)
	TNT1 A 0 A_SpawnItemEx("NemesisGibbedGenerator",0,0,0,0,0,0,0,128,0)
	NPAI OOOOOOOOOOOOO 2 A_CustomMissile("NemesisTormentorDeathEffect",0,0,0,CMF_TRACKOWNER)
	NPAI P 0 A_KillChildren
	TNT1 A 0 A_SpawnItemEx("NemesisGibbedGenerator",0,0,0,0,0,0,0,128,0)
	NPAI PPPPPPP 2 A_CustomMissile("NemesisTormentorDeathEffect",0,0,0,CMF_TRACKOWNER)
	TNT1 A 0 A_SpawnItemEx("NemesisGibbedGenerator",0,0,0,0,0,0,0,128,0)
	NPAI QQQQQQQ 2 A_CustomMissile("NemesisTormentorDeathEffect",0,0,0,CMF_TRACKOWNER)
	TNT1 A 0 A_SpawnItemEx("NemesisGibbedGenerator",0,0,0,0,0,0,0,128,0)
	NPAI RRRRRRR 2 A_CustomMissile("NemesisTormentorDeathEffect",0,0,0,CMF_TRACKOWNER)
	TNT1 A 0 A_SpawnItemEx("NemesisGibbedGenerator",0,0,0,0,0,0,0,128,0)
	NPAI SSSSSSS 2 A_CustomMissile("NemesisTormentorDeathEffect",0,0,0,CMF_TRACKOWNER)
	TNT1 A 0 A_SpawnItemEx("NemesisGibbedGenerator",0,0,0,0,0,0,0,128,0)
	NPAI TTTTTTT 2 A_CustomMissile("NemesisTormentorDeathEffect",0,0,0,CMF_TRACKOWNER)
	TNT1 A 0 A_JumpIf(user_soullevel >= 10,4)
	TNT1 A 0 A_JumpIf(user_soullevel >= 5,5)
	TNT1 A 0 A_SpawnItemEx("MiniNemesisDeathBall")
	TNT1 A 0 A_Jump(256,12)
	TNT1 A 0 A_SpawnItemEx("NemesisTormentorSuperDeath")
	TNT1 A 0 A_Jump(256,10)
	TNT1 AAAAAAAA 0 A_CustomMissile("NemesisCyberBouncyBFG",0,0,random(0,360),2,random(-5,30))
	TNT1 A 0 A_SpawnItem("NemesisDeathBall")
	TNT1 A 1
	TNT1 AAAAAA 0 A_SpawnItemEx("NemesisUmbra",0,0,16,random(-20,20),random(-20,20),random(0,30))
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("NoVexedBoys") == 1,2)
	TNT1 A 0 A_JumpIf(user_soullevel >= 7,3)
	TNT1 A 0 A_SpawnItemEx("NemesisSoul",0,0,16,0,0,0,0,32,128)
	TNT1 A 0 A_Jump(256,2)
	TNT1 A 0 A_SpawnItemEx("VexedNemesisSoul",0,0,16,0,0,0,0,32,128)
	TNT1 A 0 A_NoBlocking
	NPAI UV 4
	TNT1 A 100
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("NemesisFragment") == 0,8)
	TNT1 A 0 A_JumpIfInTargetInventory("NemesisFragmentToken",1,7)
	TNT1 A 0 A_JumpIf(user_soullevel >= 10,5)
	TNT1 A 0 A_JumpIf(user_soullevel >= 7,2)
	TNT1 A 0 A_Jump(256,4)
	TNT1 A 0 A_SpawnItemEx("NemesisFragmentSpawner",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION,192)
	TNT1 A 0 A_Jump(256,2)
	TNT1 A 0 A_SpawnItemEx("NemesisFragmentSpawner",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION,128)
	TNT1 A 0 A_Jump(100,"MoreStuff")	
	TNT1 A 1
    Stop
  MoreStuff:
	TNT1 A 0 A_SpawnItem("HellionSmokeAttack")
	TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 1 A_SpawnItem("NemesisHKItemRandomizer")
	TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 1 A_SpawnItem("NemesisHKItemRandomizer")
	TNT1 A 1 A_SpawnItem("NemesisHKSuperItemRandomizer")
	TNT1 A 1
	Stop
  VexedSpawn:
	NPAI L 3 Bright A_Pain
	NPAI L 0 A_PlaySoundEx("brain/spit",7,0,2)
	NPAI LLLLLLLLLLLLLLLLL 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NPAI LLLLLLLLLLLLLLLLL 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NPAI LLLLLLLLLLLLLLLLL 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	TNT1 A 0 A_SpawnItemEx("NemesisLightning")
	VPAI DDDDDDDDDDDD 2 Bright A_SpawnItemEx("VexedNemesisFlameSpawner")
	TNT1 A 0 A_SpawnItemEx("INFVexedNemesisTormentor",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TELEFRAG)
	TNT1 A 1
	Stop
	}
}

ACTOR INFNemesisTormentor2 : INFNemesisTormentor
{
Tag "\c[v9]Nemesis Tormentor\c-"
States
{
  Spawn:
    TNT1 A 0 
	TNT1 A 0 A_Jump(128,"Remove")
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("SimpleProgSys") == 0,2)
    TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("RuneTier3SpawnCheck") == 2,1)
	Goto Remove
  Idle:
	TNT1 A 0 A_JumpIfInventory("MarineKilled",1,"Taunt")
    TNT1 AAA 0 A_SpawnItemEx("NDefilerSmokeSpawner")
    NPAI A 10 A_Look
    Loop
	}
}

ACTOR INFNemesisBabySentient : NemesisBabySentient Replaces NemesisBabySentient2
{
Tag "\c[v9]Nemesis Baby Sentient\c-"
States
{
  VexedSpawn:
	NBBS G 3 Bright A_Pain
	NBBS G 0 A_PlaySoundEx("brain/spit",7,0,2)
	NBBS GGGGGGGGGGGGGGGGG 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NBBS GGGGGGGGGGGGGGGGG 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NBBS GGGGGGGGGGGGGGGGG 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	TNT1 A 0 A_SpawnItemEx("NemesisLightning")
	NBBS GGGGGGGGGGGG 2 Bright A_SpawnItemEx("VexedNemesisFlameSpawner")
	TNT1 A 0 A_SpawnItemEx("INFVexedNemesisBabySentient",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TELEFRAG)
	TNT1 A 1
	Stop
	}
}

ACTOR INFNemesisBabySentient2 : INFNemesisBabySentient
{
Tag "\c[v9]Nemesis Baby Sentient\c-"
States
{
  Spawn:
    TNT1 A 0 
	TNT1 A 0 A_Jump(128,"Remove")
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("SimpleProgSys") == 0,2)
    TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("RuneTier3SpawnCheck") == 2,1)
	Goto Remove
  Idle:
    TNT1 A 0 A_JumpIf(user_script == 1,4)
	TNT1 A 0 ACS_NamedExecuteAlways("NemesisBabySentientFire")
	TNT1 A 0 A_PlaySound("NemesisBabySentient/Loop",7,1.0,1)
    TNT1 A 0 A_SetUserVar("user_script",1)
	TNT1 AAA 0 A_SpawnItemEx("NemesisHellionSmokeSpawner",random(-24,24),random(-24,24),0)
	NBBS A 6 A_Look
	TNT1 AAA 0 A_SpawnItemEx("NemesisHellionSmokeSpawner",random(-24,24),random(-24,24),0)
	NBBS B 6 A_Look	
    Loop
  Remove:
    TNT1 A 1
	TNT1 A 0 A_SpawnItemEx("Arachnotron",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 A_ChangeFlag("COUNTKILL", FALSE)
	TNT1 A 0
	Stop
	}
}

ACTOR INFNemesisBehemoth : NemesisBehemoth Replaces NemesisBehemoth2
{
Tag "\c[v9]Nemesis Behemoth\c-"
States
{
  VexedSpawn:
	NEMB G 3 Bright A_Pain
	NEMB G 0 A_PlaySoundEx("brain/spit",7,0,2)
	NEMB GGGGGGGGGGGGGGGGG 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NEMB GGGGGGGGGGGGGGGGG 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NEMB GGGGGGGGGGGGGGGGG 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	TNT1 A 0 A_SpawnItemEx("NemesisLightning")
	NEMB GGGGGGGGGGGG 2 Bright A_SpawnItemEx("VexedNemesisFlameSpawner")
	TNT1 A 0 A_SpawnItemEx("INFVexedNemesisGoliath",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TELEFRAG)
	TNT1 A 1
	Stop
	}
}

ACTOR INFNemesisBehemoth2 : INFNemesisBehemoth
{
Tag "\c[v9]Nemesis Behemoth\c-"
States
{
  Spawn:
    TNT1 A 0 
	TNT1 A 0 A_Jump(128,"Remove")
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("SimpleProgSys") == 0,2)
    TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("RuneTier3SpawnCheck") == 2,1)
	Goto Remove
  Idle:
	TNT1 AAA 0 A_SpawnItemEx("NemesisHellionSmokeSpawner",random(-24,24),random(-24,24),0)
	NEMB C 8 A_Look
	Loop
  Remove:
    TNT1 A 1
	TNT1 A 0 A_SpawnItemEx("Fatso",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 A_ChangeFlag("COUNTKILL", FALSE)
	TNT1 A 0
	Stop
	}
}

ACTOR INFNemesisRevenant : NemesisRevenant Replaces NemesisRevenant2
{
Tag "\c[v9]Nemesis Revenant\c-"
States
{
  Fake:
	TNT1 A 0 A_JumpIf(user_fake >= 2,"See")   
	TNT1 A 0 A_SetUserVar("user_fake",user_fake+1)
	TNT1 A 0 A_ChangeFlag("SHOOTABLE",0)
	TNT1 A 0 A_ChangeFlag("SOLID",0)
	NMRV LM 7
	TNT1 A 0 A_StopSound(6)
	TNT1 A 0 A_SetUserVar("user_music",0)
	NMRV N 7 A_PlaySoundEx("NemesisRevenant/death","body",0,1)
	NMRV O 7
	NMRV P 0 A_SpawnItemEx("BossArmorBonusMax",0,0,0,0,0,0,0,0,64)
	NMRV P 7 A_SpawnItemEx("BossLifeEssence",0,0,0,0,0,0,0,0,64)
	NMRV Q 17
	NMRV QQQQQQQQQQQQQ 2 A_SpawnItemEx("LRUndeadHand",random(-128,128),random(-128,128),-9999)
	NMRV QQQQQQQQQQQQQ 2 A_SpawnItemEx("LRUndeadHand",random(-128,128),random(-128,128))
	TNT1 A 0 A_Jump(32,"JustRaiseAlready")
	NMRV QQQQQQQQQQQQQ 2 A_SpawnItemEx("LRUndeadHand",random(-128,128),random(-128,128),-9999)
	NMRV QQQQQQQQQQQQQ 2 A_SpawnItemEx("LRUndeadHand",random(-128,128),random(-128,128))
	TNT1 A 0 A_Jump(32,"JustRaiseAlready")
	NMRV QQQQQQQQQQQQQ 2 A_SpawnItemEx("LRUndeadHand",random(-128,128),random(-128,128),-9999)
	NMRV QQQQQQQ 30 A_Jump(32,"JustRaiseAlready")
  JustRaiseAlready:
	NMRV Q 0 A_PlaySound("misc/gibbed")
	NMRV Q 0 A_SpawnItemEx("VileHealEffect",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	NMRV Q 0 A_ChangeFlag("SHOOTABLE",1)
	NMRV Q 5 A_ChangeFlag("SOLID",1)
	NMRV P 0 A_PlaySoundEx("NemesisRevenant/see","body",0,1)
	NMRV PONML 5
	Goto See
  VexedSpawn:
	NMRV L 3 Bright A_Pain
	TNT1 A 0 A_PlaySoundEx("Vexedrevenant/Attack",6,0,0.5)
	TNT1 A 0 A_PlaySoundEx("brain/spit",7)
	NMRV LLLLLLLLLLLLLLLLL 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NMRV LLLLLLLLLLLLLLLLL 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NMRV LLLLLLLLLLLLLLLLL 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	TNT1 A 0 A_SpawnItemEx("NemesisLightning")
	NMRV LLLLLLLLLLLL 2 Bright A_SpawnItemEx("VexedNemesisFlameSpawner")
	TNT1 A 0 A_SpawnItemEx("INFVexedNemesisRevenant",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TELEFRAG)
	TNT1 A 1
	Stop
	}
}

ACTOR INFNemesisRevenant2 : INFNemesisRevenant
{
Tag "\c[v9]Nemesis Revenant\c-"
States
{
  Spawn:
    TNT1 A 0 
	TNT1 A 0 A_Jump(128,"Remove")
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("SimpleProgSys") == 0,2)
    TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("RuneTier3SpawnCheck") == 2,1)
	Goto Remove
  Idle:
	NMRV A 10 Bright A_Look
	TNT1 AAA 0 A_SpawnItem("NemesisHellionSmokeSpawner",0,0,0,0)
	Loop
  Remove:
    TNT1 A 1
	TNT1 A 0 A_SpawnItemEx("Revenant",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 A_ChangeFlag("COUNTKILL", FALSE)
	TNT1 A 0
	Stop
	}
}

//Nemesis Summoner Revenant

ACTOR NemesisSummonerRevenant2 : NemesisSummonerRevenant
{
Tag "\c[g3]Nemesis Summoner Revenant\c-"
States
{
  Spawn:
    TNT1 A 0 
	TNT1 A 0 A_Jump(220,"Remove")
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("SimpleProgSys") == 0,2)
    TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("RuneTier3SpawnCheck") == 2,1)
	Goto Remove
  Idle:
	NS99 A 10 Bright A_Look
	TNT1 AAA 0 A_SpawnItem("NemesisHellionSmokeSpawner",0,0,0,0)
	Loop
	}
}

ACTOR INFNemesisHellKnight : NemesisHellKnight Replaces NemesisHellKnight2
{
Tag "\c[v9]Nemesis Hell Knight\c-"
States
{
  VexedSpawn:
	NNBL G 3 Bright A_Pain
	NNBL G 0 A_PlaySoundEx("brain/spit",7,0,2)
	NNBL GGGGGGGGGGGGGGGGG 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NNBL GGGGGGGGGGGGGGGGG 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	NNBL GGGGGGGGGGGGGGGGG 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	TNT1 A 0 A_SpawnItemEx("NemesisLightning")
	NNBL GGGGGGGGGGGG 2 Bright A_SpawnItemEx("VexedNemesisFlameSpawner")
	TNT1 A 0 A_SpawnItemEx("INFVexedNemesisArchon",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TELEFRAG)
	TNT1 A 1
	Stop
	}
}

ACTOR INFNemesisHellKnight2 : INFNemesisHellKnight
{
Tag "\c[v9]Nemesis Hell Knight\c-"
States
{
  Spawn:
    TNT1 A 0 
	TNT1 A 0 A_Jump(128,"Remove")
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("SimpleProgSys") == 0,2)
    TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("RuneTier3SpawnCheck") == 2,1)
	Goto Remove
  Idle:
	NNBL A 10 Bright A_Look
	TNT1 AAA 0 A_SpawnItemEx("NemesisHellionSmokeSpawner",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION,64)
	Loop
  Remove:
    TNT1 A 1
	TNT1 A 0 A_SpawnItemEx("HellKnight",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 A_ChangeFlag("COUNTKILL", FALSE)
	TNT1 A 0
	Stop
	}
}

ACTOR INFNemesisCyberNoble : NemesisCyberNoble Replaces NemesisCyberNoble2
{
Tag "\c[v9]Nemesis Cyber Noble\c-"
States
{
  VexedSpawn:
	NCBS H 3 Bright A_Pain
	TNT1 A 0 A_PlaySound("VexedNemesisCydestroyer/Spawn",6,1.0,0,ATTN_NONE)
	TNT1 A 0 A_PlaySound("brain/spit",7)
	TNT1 A 0 A_KillMaster
	NCBS HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	TNT1 A 0 A_SpawnItemEx("NemesisLightning")
	NCBS HHHHHHHHHHHH 2 Bright A_SpawnItemEx("VexedNemesisFlameSpawner")
	TNT1 A 0 A_SpawnItemEx("INFVexedNemesisCydestroyer",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TELEFRAG)
	TNT1 A 1
	Stop
	}
}

ACTOR INFNemesisCyberNoble2 : INFNemesisCyberNoble
{
Tag "\c[v9]Nemesis Cyber Noble\c-"
States
{
  Spawn:
    TNT1 A 0 
	TNT1 A 0 A_Jump(128,"Remove")
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("SimpleProgSys") == 0,2)
    TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("RuneTier3SpawnCheck") == 2,1)
	Goto Remove
  Idle:
    TNT1 AA 0 Bright A_SpawnItem("NemesisHellionSmokeSpawner",0,0,0,0)
    NCBS A 7 Bright A_Look
    Loop 
  Remove:
    TNT1 A 1
	TNT1 A 0 A_SpawnItemEx("Baronofhell",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 A_ChangeFlag("COUNTKILL", FALSE)
	TNT1 A 0
	Stop
	}
}

//Nemesis Assault Knight

//Cursed Hellknight

//Nemesis Belphegor

ACTOR INFNemesisBelphegor2 : NemesisBelphegor
{
Tag "\c[g3]Nemesis Belphegor\c-"
States
{
  Spawn:
    TNT1 A 0 
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("SimpleProgSys") == 0,2)
    TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("RuneTier3SpawnCheck") == 2,1)
	Goto Remove
  Idle:
    TNT1 AA 0 A_SpawnItem("NemesisHellionSmokeSpawner",0,0,0,0)
    NLHP A 10 Bright A_Look
	TNT1 AA 0 A_SpawnItem("NemesisHellionSmokeSpawner",0,0,0,0)
    Loop
  Remove:
	TNT1 A 1
	TNT1 A 0 A_SpawnItemEx("Baronofhell",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 A_ChangeFlag("COUNTKILL", FALSE)
	TNT1 A 0
	Stop
	}
}

ACTOR INFNemesisExile : NemesisExile Replaces NemesisExile2
{
Tag "\c[v9]Nemesis Exile\c-"
States
{
  VexedSpawn:
	NVIL Q 3 Bright A_Pain
	TNT1 A 0 A_PlaySound("brain/spit",7)
	NVIL QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ 2 Bright A_GiveInventory("NemesisSoulEvent",1)
	TNT1 A 0 A_SpawnItemEx("NemesisLightning")
	NVIL QQQQQQQQQQQQ 2 Bright A_SpawnItemEx("VexedNemesisFlameSpawner")
	TNT1 A 0 A_SpawnItemEx("INFVexedNemesisExileEvent",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TELEFRAG)
	TNT1 A 1
	Stop
	}
}

ACTOR INFNemesisExile2 : INFNemesisExile
{
Tag "\c[v9]Nemesis Exile\c-"
States
{
  Spawn:
    TNT1 A 0 
	TNT1 A 0 A_Jump(128,"Remove")
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("SimpleProgSys") == 0,2)
    TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("RuneTier3SpawnCheck") == 2,1)
	Goto Remove
  Idle:
    TNT1 AA 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
    NVIL A 10 A_Look 
    Loop 
  Remove:
    TNT1 A 1
	TNT1 A 0 A_SpawnItemEx("Archvile",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 A_ChangeFlag("COUNTKILL", FALSE)
	TNT1 A 0
	Stop
	}
}

//Nemesis Krieger

ACTOR NemesisKrieger2 : NemesisKrieger
{
Tag "\c[g3]Nemesis Krieger my mission is a kill you HAHAHAHA!\c-"
States
{
  Spawn:
    TNT1 A 0 
	TNT1 A 0 A_Jump(128,"Remove")
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("SimpleProgSys") == 0,2)
    TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("RuneTier3SpawnCheck") == 2,1)
	Goto Remove
	TNT1 A 0 A_SetUserVar("user_deathtimer",0)
  Idle:
	NIML A 10 Bright A_Look
	TNT1 A 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
	NIML A 10 Bright A_Look
	TNT1 AA 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
	Loop
	}
}

//Cursed Cyber Noble

ACTOR INFInsanityClockworkCydestroyer : InsanityClockworkCydestroyer Replaces InsanityClockworkCydestroyer
{
DropItem "BossLifeEssence" 200 25
DropItem "BossArmorBonusMax" 200 1
DropItem "GreaterPlasmaEnergy" 128
DropItem "GreaterDemonicEnergy" 128 200
DropItem "NewShell" 256
DropItem "NewShellBox" 224
DropItem "Grenade Launcher" 184
DropItem "BFG10K " 200 1
DropItem "Railgun " 200 1
DropItem "DemonicChalice" 128 1
DropItem "SkullOfPower" 256 1
DropItem "Demon Tech Devastator" 256 1
DropItem "Demon Tech BFG10K" 256 1
DropItem "Explosive Minigun" 256 1
DropItem "ExplosiveRailgun" 200 1
DropItem "Explosive Shotgun" 200
DropItem "Rocket Launcher" 256
DropItem "HomingRocketLauncher" 200
DropItem "LegendaryRune", 128, 1
DropItem "CannongunSphere" 128
DropItem "EFG9000", 96
DropItem "HeavyGrenadeLauncher", 96
DropItem "HellfireUltrasphere", 128
Tag "\c[i7]Insanity Clockwork Cydestroyer\c-"
States
{
  Remove:
    TNT1 A 1
	TNT1 A 0 A_SpawnItemEx("Baronofhell",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 A_ChangeFlag("COUNTKILL", FALSE)
	TNT1 A 0
	Stop
	}
}

ACTOR INFInsanityClockworkCydestroyer2 : INFInsanityClockworkCydestroyer
{
Tag "\c[i7]Insanity Clockwork Cydestroyer\c-"
States
{
  Spawn:
    TNT1 A 0
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("SimpleProgSys") == 0,2)
    TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("RuneTier3SpawnCheck") == 2,1)
	Goto Remove
  Idle:
    ICDT A 25 A_Look
	TNT1 AA 0 A_SpawnItem("EnragedHellionSmokeSpawner")
    Loop 
	}
}

ACTOR INFPanzGrosse : PanzGrosse Replaces PanzGrosse
{
Tag "\c[i7]Panz \c[y7]Grosse\c-"
}

//Nemesis Hitler

ACTOR INFNemesisHitler2 : NemesisHitler
{
Tag "\c[g3]Der Prototyp Nemesis Fuhrer Klon\c-"
States
{
  Spawn:
    TNT1 A 0
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("SimpleProgSys") == 0,2)
    TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("RuneTier3SpawnCheck") == 2,1)
	Goto Remove
	TNT1 A 0 A_SetUserVar("user_deathtimer",0)
  SpawnLoop:
	TNT1 A 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
    H1ML A 3 Bright A_Look
	TNT1 A 0 A_SpawnItemEx("NemesisHellionSmokeSpawner")
	Loop
	}
}

//Medeus

Actor Medeus2 : Medeus
{
Tag "\c[m5]Medeus \c[a6]The Sacrosanct Sorcerer\c-"
States
{
  Spawn:
    TNT1 A 0
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("SimpleProgSys") == 0,2)
    TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("RuneTier2SpawnCheck") == 2,1)
	Goto Remove
    TNT1 A 0 Thing_ChangeTid(0,ACS_NamedExecuteWithResult("Hem_GetTID"))
    TNT1 AAAA 0 A_SpawnItemEx("MasterLightningSpawnerSmallGreen",0,0,0,0,0,0,0,SXF_SETMASTER)
    TNT1 A 0 A_PlaySound("electric/loop",5,1.0,TRUE)
 Idle:
    TNT1 A 0 A_JumpIfInventory("MarineKilled",1,"Taunt")
    XEDU A 10 A_Look
    XEDU B 10 A_Look
    Loop
  Remove:
	TNT1 A 1
	TNT1 A 0 A_SpawnItemEx("BaronOfHell",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 A_ChangeFlag("COUNTKILL", FALSE)
	TNT1 A 0
	Stop
	}
}