Actor NewOverlord : Overlord replaces Overlord
{
  Health 8666 //12666
  MinMissileChance 64//160
  Painchance 5
  Painchance "Crush", 256
  Painchance "Mine", 256
  PainChance "Explosion", 200
  Painchance "NuclearFire", 200
  DamageFactor "Player", 0.5
  DropItem "BossLifeEssence", 256, 200
  DropItem "NemesisArmorBonus64", 256
  DropItem "UltraSphere", 128, 1
  DropItem "SkullofPower", 128, 1
  DropItem "DemonicChalice", 96, 1
  DropItem "LegendaryRune", 180
  DropItem "NemSphereRandomizer", 256, 1
  DropItem "NemesisArmorSphere", 96, 1
  DropItem "VileStaff", 128, 1
  DeathSound "ChaosElemental/Death"
  MeleeSound "caco/melee"
  Obituary "%o was turned into dust by the Overlord."
  HitObituary "The Overlord ate %o for lunch."
  Tag "\c[g6]Overlord\c-"
  States
  {
  Spawn:
	OVER A 1
	TNT1 A 0 A_GiveInventory("IsAnHEMOverlord",1)
	TNT1 A 0 A_ChangeFlag(NOPAIN,0)
	TNT1 A 0 A_SetUserVar("user_healcount",0)
	TNT1 A 0 A_SetUserVar("user_RestHealCounter",0)
	TNT1 A 0 A_SetUserVar("user_ammoss",0)
	TNT1 A 0 A_SetUserVar("user_Mcounter",0)
	TNT1 A 0 A_SetUserVar("user_pcounter",0)
	TNT1 A 0 A_SetUserVar("user_currenthp",ACS_NamedExecuteWithResult("Hem_GetCurrentHealth"))
  SpawnLoop:
	OVER A 10 A_Look
	TNT1 A 0 A_JumpIfHealthLower(ACS_NamedExecuteWithResult("Hem_SpawnHealth"),"Idle")
	Loop
  Idle:
	TNT1 A 0
	TNT1 A 0 A_ChangeFlag(NOPAIN,0)
	TNT1 A 0 A_GiveInventory("ResetMonsterInvul",1)
	TNT1 A 0 A_SetUserVar("user_ammoss",0)
  IdleLoop:
	TNT1 A 0 A_SetUserVar("user_currenthp",ACS_NamedExecuteWithResult("Hem_GetCurrentHealth"))
	OVER AAAABBBBCCC 2 A_Wander
	TNT1 A 0 A_JumpIf((user_currenthp - ACS_NamedExecuteWithResult("Hem_GetCurrentHealth")) > 100,"SummonFake")
	TNT1 A 0 A_JumpIf((user_currenthp - ACS_NamedExecuteWithResult("Hem_GetCurrentHealth")) > 50,"PainAvoid")
	OVER C 2 A_Look
	TNT1 A 0 A_SetUserVar("user_currenthp",ACS_NamedExecuteWithResult("Hem_GetCurrentHealth"))
	OVER AAAABBBBCCC 2 A_Wander
	TNT1 A 0 A_JumpIf((user_currenthp - ACS_NamedExecuteWithResult("Hem_GetCurrentHealth")) > 100,"SummonFake")
	TNT1 A 0 A_JumpIf((user_currenthp - ACS_NamedExecuteWithResult("Hem_GetCurrentHealth")) > 50,"PainAvoid")
	OVER C 2 A_Look
	TNT1 A 0 A_SetUserVar("user_currenthp",ACS_NamedExecuteWithResult("Hem_GetCurrentHealth"))
	OVER AAAABBBBCCC 2 A_Wander
	TNT1 A 0 A_JumpIf((user_currenthp - ACS_NamedExecuteWithResult("Hem_GetCurrentHealth")) > 100,"SummonFake")
	TNT1 A 0 A_JumpIf((user_currenthp - ACS_NamedExecuteWithResult("Hem_GetCurrentHealth")) > 50,"PainAvoid")
	OVER C 2 A_Look
	TNT1 A 0 A_SetUserVar("user_currenthp",ACS_NamedExecuteWithResult("Hem_GetCurrentHealth"))
	OVER AAAABBBBCC 2 A_Wander
	TNT1 A 0 A_JumpIf((user_currenthp - ACS_NamedExecuteWithResult("Hem_GetCurrentHealth")) > 100,"SummonFake")
	TNT1 A 0 A_JumpIf((user_currenthp - ACS_NamedExecuteWithResult("Hem_GetCurrentHealth")) > 50,"PainAvoid")
	OVER CC 2 A_Look
	OVER A 2 A_Look
	OVER B 3 A_Look
	OVER C 30 A_Look
	TNT1 A 0 A_Jump(192,2)
	TNT1 A 0 A_PlaySound("Corruptor/Active")
	TNT1 A 0 A_SetAngle(Angle-30)
	OVER A 60 A_Look
	TNT1 A 0 A_SetAngle(Angle+30)
	OVER C 5 A_Look
	TNT1 A 0 A_SetAngle(Angle+30)
	OVER C 60 A_Look
	TNT1 A 0 A_SetAngle(Angle-30)
	OVER C 10 A_Look
	Loop
  See:
	TNT1 A 0
	TNT1 A 0 A_ChangeFlag(NOPAIN,0)
	TNT1 A 0 A_GiveInventory("ResetMonsterInvul",1)
  SeeLoop:
	TNT1 A 0 A_SetUserVar("user_currenthp",ACS_NamedExecuteWithResult("Hem_GetCurrentHealth"))
	TNT1 A 0 A_JumpIfInventory("IsAnHEMFake",1,4)
	TNT1 A 0 A_JumpIf(user_music == 1,3)
	TNT1 A 0 ACS_NamedExecuteAlways("StartMonsterMusic",0,810)
	TNT1 A 0 A_SetUserVar("user_music",1)
	OVER AAAA 1 A_Chase
	"####" "#" 0 A_JumpIfInTargetLOS("AvoidAndAttack",360,JLOSF_DEADNOJUMP,2048)
	OVER BBBB 1 A_Chase
	"####" "#" 0 A_JumpIfInTargetLOS("AvoidAndAttack",360,JLOSF_DEADNOJUMP,2048)
	OVER CCCC 1 A_Chase
	TNT1 A 0 A_JumpIf((user_currenthp - ACS_NamedExecuteWithResult("Hem_GetCurrentHealth")) > 500,"PainResurrect")
	TNT1 A 0 A_JumpIf((user_currenthp - ACS_NamedExecuteWithResult("Hem_GetCurrentHealth")) > 50,"PainAvoid")
	TNT1 A 0 A_SetUserVar("user_currenthp",ACS_NamedExecuteWithResult("Hem_GetCurrentHealth"))
	OVER AAAA 1 A_Chase
	"####" "#" 0 A_JumpIfInTargetLOS("AvoidAndAttack",360,JLOSF_DEADNOJUMP,2048)
	OVER BBBB 1 A_Chase
	"####" "#" 0 A_JumpIfInTargetLOS("AvoidAndAttack",360,JLOSF_DEADNOJUMP,2048)
	OVER CCCC 1 A_Chase
	TNT1 A 0 A_JumpIf((user_currenthp - ACS_NamedExecuteWithResult("Hem_GetCurrentHealth")) > 500,"PainResurrect")
	TNT1 A 0 A_JumpIf((user_currenthp - ACS_NamedExecuteWithResult("Hem_GetCurrentHealth")) > 50,"PainAvoid")
	Loop
  Melee:
	TNT1 A 0
	TNT1 A 0 A_ChangeFlag(NOPAIN,0)
	TNT1 A 0 A_GiveInventory("ResetMonsterInvul",1)
	OVER DDDDDEEEE 1 Bright A_FaceTarget
	OVER F 1 A_MeleeAttack
	OVER FFFEEED 1 Bright A_FaceTarget
	GoTo See
  Missile:
	TNT1 A 0
	TNT1 A 0 A_ChangeFlag(NOPAIN,0)
	TNT1 A 0 A_GiveInventory("ResetMonsterInvul",1)
	TNT1 A 0 A_Stop
	TNT1 A 0 A_SetUserVar("user_pcounter",0)
	TNT1 A 0 A_JumpIf(user_Mcounter > 6,"SummonSoulSpam")
	Goto Missile2
  Missile2:
	TNT1 A 0 A_JumpIfTargetInLOS("FarRange",90,JLOSF_CLOSENOJUMP|JLOSF_DEADNOJUMP|JLOSF_TARGETLOS,0,1000)
	TNT1 A 0 A_JumpIfTargetInLOS("LongRange",90,JLOSF_CLOSENOJUMP|JLOSF_DEADNOJUMP|JLOSF_TARGETLOS,0,800)
	TNT1 A 0 A_JumpIfTargetInLOS("NearRange",90,JLOSF_CLOSENOJUMP|JLOSF_DEADNOJUMP|JLOSF_TARGETLOS,0,500)
	TNT1 A 0 A_JumpIfTargetInLOS("CloseRange",90,JLOSF_DEADNOJUMP|JLOSF_TARGETLOS,500,0)
	TNT1 A 0 A_JumpIfHealthLower((ACS_NamedExecuteWithResult("Hem_SpawnHealth")*0.7),"Missile3")
	Goto Missile4
  Missile3:
	TNT1 A 0 A_SetUserVar("user_Mcounter",user_Mcounter+1)
	Goto Missile4
  Missile4:
	TNT1 A 0 A_Jump(256,"SummonImpure","Normal")
	Goto Normal
  Normal:
	TNT1 A 0 A_ChangeFlag(NOPAIN,1)
	OVER DDDDEEEE 1 Bright A_FaceTarget(45)
	OVER FF 1 Bright A_FaceTarget
	TNT1 A 0 A_Monsterrefire(0,"NormalNV")
  NormalNV:
	TNT1 AA 0 A_CustomMissile("HeresiarchBlueBall",59,0,random(-8,8),CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
	OVER FF 1 Bright A_FaceTarget
	TNT1 AA 0 A_CustomMissile("HeresiarchBlueBall",59,0,random(-8,8),CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
	OVER FF 1 Bright A_FaceTarget
	TNT1 AA 0 A_CustomMissile("HeresiarchBlueBall",59,0,random(-8,8),CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
	OVER FF 1 Bright A_FaceTarget
	TNT1 AA 0 A_CustomMissile("HeresiarchBlueBall",59,0,random(-8,8),CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
	OVER FF 1 Bright A_FaceTarget
	TNT1 AA 0 A_CustomMissile("HeresiarchBlueBall",59,0,random(-8,8),CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
	OVER FF 1 Bright A_FaceTarget
	TNT1 AA 0 A_CustomMissile("HeresiarchBlueBall",59,0,random(-8,8),CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
	OVER FF 1 Bright A_FaceTarget
	TNT1 AA 0 A_CustomMissile("HeresiarchBlueBall",59,0,random(-8,8),CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
	OVER FF 1 Bright A_FaceTarget
	TNT1 AA 0 A_CustomMissile("HeresiarchBlueBall",59,0,random(-8,8),CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
  NormalEnd:
	TNT1 A 0 A_ChangeFlag(NOPAIN,0)
	OVER EDD 5
	TNT1 A 0 A_JumpIfHealthLower((ACS_NamedExecuteWithResult("Hem_SpawnHealth")*0.25),"Pain.Crush")
	TNT1 A 0 A_Jump(128,"NearRange","LongRange","FarRange")
	TNT1 A 0 A_GiveInventory("MonsterAvoid",1)
	GoTo See
  FarRange:
	TNT1 A 0 A_Jump(256,"CometBlast","CometSpread","CurseComets","HomingComets","HomingComets")
	Goto Normal
  LongRange:
	TNT1 A 0 A_Jump(256,"CometBlast","CometSpread","CurseComets","HomingComets")
	Goto Normal
  NearRange:
	TNT1 A 0 A_Jump(256,"FireSpread","FireBlast","FireBlast","CometBlast","CometBlast","CurseComets","HomingComets")
	Goto Normal
  CloseRange:
	TNT1 A 0 A_Jump(256,"Normal","Normal","Normal","FireSpread","FireBlast","FireBlast","CometBlast","CurseComets","HomingComets")
	Goto Normal
  FireBlast:
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	OVER GGGGGHHHHH 1 Bright A_FaceTarget(45)
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	OVER III 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AAAAAAAAAAAAA 0 A_CustomMissile("HeresiarchBlueBall",59,0,random(-8,8),CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
	OVER HGEDD 3 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 A 0 A_JumpIfHealthLower((ACS_NamedExecuteWithResult("Hem_SpawnHealth")*0.25),"Pain.Crush")
	GoTo See
  FireSpread:
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	OVER GGGGGHHHHH 1 Bright A_FaceTarget(45)
	TNT1 A 0 A_Monsterrefire(0,"FireSpreadNV")
  FireSpreadNV:
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	OVER II 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AA 0 A_CustomMissile("HeresiarchBlueBall",59,0,random(-8,8),CMF_TRACKOWNER|CMF_OFFSETPITCH,random(-4,4))
	OVER II 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AA 0 A_CustomMissile("HeresiarchBlueBall",59,0,random(-8,8),CMF_TRACKOWNER|CMF_OFFSETPITCH,random(-4,4))
	OVER II 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AA 0 A_CustomMissile("HeresiarchBlueBall",59,0,random(-8,8),CMF_TRACKOWNER|CMF_OFFSETPITCH,random(-4,4))
	OVER II 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AA 0 A_CustomMissile("HeresiarchBlueBall",59,0,random(-8,8),CMF_TRACKOWNER|CMF_OFFSETPITCH,random(-4,4))
	OVER II 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AA 0 A_CustomMissile("HeresiarchBlueBall",59,0,random(-8,8),CMF_TRACKOWNER|CMF_OFFSETPITCH,random(-4,4))
	OVER II 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AA 0 A_CustomMissile("HeresiarchBlueBall",59,0,random(-8,8),CMF_TRACKOWNER|CMF_OFFSETPITCH,random(-4,4))
	OVER II 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AA 0 A_CustomMissile("HeresiarchBlueBall",59,0,random(-8,8),CMF_TRACKOWNER|CMF_OFFSETPITCH,random(-4,4))
	OVER II 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AA 0 A_CustomMissile("HeresiarchBlueBall",59,0,random(-8,8),CMF_TRACKOWNER|CMF_OFFSETPITCH,random(-4,4))
	OVER II 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AA 0 A_CustomMissile("HeresiarchBlueBall",59,0,random(-8,8),CMF_TRACKOWNER|CMF_OFFSETPITCH,random(-4,4))
	OVER II 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AA 0 A_CustomMissile("HeresiarchBlueBall",59,0,random(-8,8),CMF_TRACKOWNER|CMF_OFFSETPITCH,random(-4,4))
	OVER II 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AA 0 A_CustomMissile("HeresiarchBlueBall",59,0,random(-8,8),CMF_TRACKOWNER|CMF_OFFSETPITCH,random(-4,4))
	OVER II 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AA 0 A_CustomMissile("HeresiarchBlueBall",59,0,random(-8,8),CMF_TRACKOWNER|CMF_OFFSETPITCH,random(-4,4))
	OVER II 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AA 0 A_CustomMissile("HeresiarchBlueBall",59,0,random(-8,8),CMF_TRACKOWNER|CMF_OFFSETPITCH,random(-4,4))
	OVER HGEDD 3 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 A 0 A_JumpIfHealthLower((ACS_NamedExecuteWithResult("Hem_SpawnHealth")*0.25),"Pain.Crush")
	TNT1 A 0 A_Jump(64,"NearRange","LongRange","FarRange")
	GoTo See
  Pain.Mine:
  Rage:
	TNT1 A 0
	TNT1 A 0 A_GiveInventory("SetMonsterInvul",1)
	OVER D 1 Bright A_FaceTarget
	OVER D 1 Bright A_SetUserVar("user_missile",0)
	TNT1 A 0 A_Stop
	OVER DDDDDDD 1 Bright A_FadeOut(0.028,0)
	OVER EEEE 2 Bright A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 A 0 A_SetTranslucent(0.8,0)
	OVER DDDD 2 Bright A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
  Raging:
	TNT1 A 0 A_JumpIf(user_missile > 55,"RagingEnd")   
	TNT1 A 0 A_SetUserVar("user_missile",user_missile+1)
	TNT1 AA 0 Bright A_CustomMissile("LegNobleBall3Small",0,0,random(0,360),CMF_AIMDIRECTION|CMF_TRACKOWNER)
	OVER D 4 Bright A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	Loop
  RagingEnd:
	OVER DDDDDDD 1 A_FadeIn(0.028)
	OVER D 2 A_GiveInventory("ResetMonsterInvul",1)
	TNT1 A 0 A_JumpIfHealthLower((ACS_NamedExecuteWithResult("Hem_SpawnHealth")*0.25),"Pain.Crush")
	TNT1 A 0 A_GiveInventory("MonsterAvoid",1)
	GoTo See
  CometBlast:
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	OVER DDDEEGGGGGGHHHHH 1 Bright A_FaceTarget(45)
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	OVER III 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AAA 0 A_CustomMissile("PaladinComet",59,0,-10,CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
	TNT1 AAA 0 A_CustomMissile("PaladinComet",59,0,-20,CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
	TNT1 AAA 0 A_CustomMissile("PaladinComet",59,0,-30,CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
	TNT1 AAA 0 A_CustomMissile("PaladinComet",59,0,-40,CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
	TNT1 AAA 0 A_CustomMissile("PaladinComet",59,0,-50,CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
	TNT1 AAA 0 A_CustomMissile("PaladinComet",59,0,-60,CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
	TNT1 AAA 0 A_CustomMissile("PaladinComet",59,0,-70,CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
	TNT1 AAA 0 A_CustomMissile("PaladinComet",59,0,-80,CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
	TNT1 AAA 0 A_CustomMissile("PaladinComet",59,0,-90,CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
	TNT1 AAA 0 A_CustomMissile("PaladinComet",59,0,0,CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
	TNT1 AAA 0 A_CustomMissile("PaladinComet",59,0,10,CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
	TNT1 AAA 0 A_CustomMissile("PaladinComet",59,0,20,CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
	TNT1 AAA 0 A_CustomMissile("PaladinComet",59,0,30,CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
	TNT1 AAA 0 A_CustomMissile("PaladinComet",59,0,40,CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
	TNT1 AAA 0 A_CustomMissile("PaladinComet",59,0,50,CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
	TNT1 AAA 0 A_CustomMissile("PaladinComet",59,0,60,CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
	TNT1 AAA 0 A_CustomMissile("PaladinComet",59,0,70,CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
	TNT1 AAA 0 A_CustomMissile("PaladinComet",59,0,80,CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
	TNT1 AAA 0 A_CustomMissile("PaladinComet",59,0,90,CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
	OVER HGEDD 5 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 A 0 A_JumpIfHealthLower((ACS_NamedExecuteWithResult("Hem_SpawnHealth")*0.25),"Pain.Crush")
	TNT1 A 0 A_Jump(64,"NearRange","LongRange","FarRange")
	GoTo See
  CometSpread:
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	OVER DDDEEGGGGGGHHHHH 1 Bright A_FaceTarget(45)
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	OVER IIII 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AAA 0 A_CustomMissile("PaladinComet",59,0,frandom(-2.0,2.0),CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
	OVER IIII 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AAA 0 A_CustomMissile("PaladinComet",59,0,frandom(-2.0,2.0),CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
	OVER IIII 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AAA 0 A_CustomMissile("PaladinComet",59,0,frandom(-2.0,2.0),CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
	OVER IIII 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AAA 0 A_CustomMissile("PaladinComet",59,0,frandom(-2.0,2.0),CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
	OVER IIII 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AAA 0 A_CustomMissile("PaladinComet",59,0,frandom(-2.0,2.0),CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
	OVER IIII 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AAA 0 A_CustomMissile("PaladinComet",59,0,frandom(-2.0,2.0),CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
	OVER IIII 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AAA 0 A_CustomMissile("PaladinComet",59,0,frandom(-2.0,2.0),CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
	OVER IIII 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AAA 0 A_CustomMissile("PaladinComet",59,0,frandom(-2.0,2.0),CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
	OVER IIII 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AAA 0 A_CustomMissile("PaladinComet",59,0,frandom(-2.0,2.0),CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
	OVER IIII 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AAA 0 A_CustomMissile("PaladinComet",59,0,frandom(-2.0,2.0),CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
	OVER IIII 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AAA 0 A_CustomMissile("PaladinComet",59,0,frandom(-2.0,2.0),CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
	OVER IIII 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AAA 0 A_CustomMissile("PaladinComet",59,0,frandom(-2.0,2.0),CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
	OVER IIII 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AAA 0 A_CustomMissile("PaladinComet",59,0,frandom(-2.0,2.0),CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
	OVER IIII 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AAA 0 A_CustomMissile("PaladinComet",59,0,frandom(-2.0,2.0),CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
	OVER IIII 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AAA 0 A_CustomMissile("PaladinComet",59,0,frandom(-2.0,2.0),CMF_TRACKOWNER|CMF_OFFSETPITCH,frandom(-2.0,2.0))
	OVER HGEDD 5 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 A 0 A_JumpIfHealthLower((ACS_NamedExecuteWithResult("Hem_SpawnHealth")*0.25),"Pain.Crush")
	TNT1 A 0 A_Jump(64,"NearRange","LongRange","FarRange")
	GoTo See
  HomingComets:
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	OVER DDDDDEEGGGGGGHHHHH 1 Bright A_FaceTarget(45)
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	OVER II 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AA 0 A_CustomMissile("OverlordComet",59,0,random(-10,10),CMF_AIMDIRECTION|CMF_TRACKOWNER,random(-10,10))
	OVER II 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AA 0 A_CustomMissile("OverlordComet",59,0,random(-10,10),CMF_AIMDIRECTION|CMF_TRACKOWNER,random(-10,10))
	OVER II 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AA 0 A_CustomMissile("OverlordComet",59,0,random(-10,10),CMF_AIMDIRECTION|CMF_TRACKOWNER,random(-10,10))
	OVER II 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AA 0 A_CustomMissile("OverlordComet",59,0,random(-10,10),CMF_AIMDIRECTION|CMF_TRACKOWNER,random(-10,10))
	OVER II 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AA 0 A_CustomMissile("OverlordComet",59,0,random(-10,10),CMF_AIMDIRECTION|CMF_TRACKOWNER,random(-10,10))
	OVER II 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AA 0 A_CustomMissile("OverlordComet",59,0,random(-10,10),CMF_AIMDIRECTION|CMF_TRACKOWNER,random(-10,10))
	OVER II 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AA 0 A_CustomMissile("OverlordComet",59,0,random(-10,10),CMF_AIMDIRECTION|CMF_TRACKOWNER,random(-10,10))
	OVER II 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AA 0 A_CustomMissile("OverlordComet",59,0,random(-10,10),CMF_AIMDIRECTION|CMF_TRACKOWNER,random(-10,10))
	OVER II 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AA 0 A_CustomMissile("OverlordComet",59,0,random(-10,10),CMF_AIMDIRECTION|CMF_TRACKOWNER,random(-10,10))
	OVER II 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AA 0 A_CustomMissile("OverlordComet",59,0,random(-10,10),CMF_AIMDIRECTION|CMF_TRACKOWNER,random(-10,10))
	OVER II 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AA 0 A_CustomMissile("OverlordComet",59,0,random(-10,10),CMF_AIMDIRECTION|CMF_TRACKOWNER,random(-10,10))
	OVER II 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AA 0 A_CustomMissile("OverlordComet",59,0,random(-10,10),CMF_AIMDIRECTION|CMF_TRACKOWNER,random(-10,10))
	OVER II 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AA 0 A_CustomMissile("OverlordComet",59,0,random(-10,10),CMF_AIMDIRECTION|CMF_TRACKOWNER,random(-10,10))
	OVER HGEDD 5 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 A 0 A_JumpIfHealthLower((ACS_NamedExecuteWithResult("Hem_SpawnHealth")*0.25),"Pain.Crush")
	TNT1 A 0 A_Jump(64,"NearRange","LongRange","FarRange")
	GoTo See
  CurseComets:
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	OVER DDDEEGGGGHHHH 1 Bright A_FaceTarget(45)
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	OVER II 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AAAA 0 A_CustomMissile("CurseComet",59,0,random(-10,10),CMF_TRACKOWNER|CMF_OFFSETPITCH,random(-4,4))
	OVER II 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AAAA 0 A_CustomMissile("CurseComet",59,0,random(-10,10),CMF_TRACKOWNER|CMF_OFFSETPITCH,random(-4,4))
	OVER II 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AAAA 0 A_CustomMissile("CurseComet",59,0,random(-10,10),CMF_TRACKOWNER|CMF_OFFSETPITCH,random(-4,4))
	OVER II 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AAAA 0 A_CustomMissile("CurseComet",59,0,random(-10,10),CMF_TRACKOWNER|CMF_OFFSETPITCH,random(-4,4))
	OVER II 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AAAA 0 A_CustomMissile("CurseComet",59,0,random(-10,10),CMF_TRACKOWNER|CMF_OFFSETPITCH,random(-4,4))
	OVER II 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AAAA 0 A_CustomMissile("CurseComet",59,0,random(-10,10),CMF_TRACKOWNER|CMF_OFFSETPITCH,random(-4,4))
	OVER II 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 AAAA 0 A_CustomMissile("CurseComet",59,0,random(-10,10),CMF_TRACKOWNER|CMF_OFFSETPITCH,random(-4,4))
	OVER HGEDD 5 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 A 0 A_JumpIfHealthLower((ACS_NamedExecuteWithResult("Hem_SpawnHealth")*0.25),"Pain.Crush")
	TNT1 A 0 A_Jump(64,"NearRange","LongRange","FarRange")
	GoTo See
  SummonSoulSpam:
	TNT1 A 0
	TNT1 A 0 A_SetUserVar("user_Mcounter",0)
	TNT1 A 0 A_JumpIf(user_ammoss > 5,"Missile2")
	TNT1 A 0 A_SetUserVar("user_ammoss",user_ammoss+1)
  SummonSoulSpam2:
	TNT1 A 0
	TNT1 A 0 A_GiveToTarget("SlowDownMode",1)
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	OVER DDDDD 1 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	OVER EEFF 1 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	OVER FFFF 1 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	OVER JJJJJ 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	OVER KK 5 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 A 0 A_SetUserVar("user_lcounter",0)
  SummonSoulSpamLoop:
	TNT1 A 0 A_CustomMissile("ImpureSoulSpawner",60,0,user_lcounter*10,CMF_AIMDIRECTION|CMF_TRACKOWNER)
	TNT1 A 0 A_GiveInventory("OverlordSpawnAmmount3",1)
	OVER K 1 Bright
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 A 0 A_SetUserVar("user_lcounter",user_lcounter+1)
	TNT1 A 0 A_JumpIfInventory("OverlordSpawnAmmount3",40,2)
	TNT1 A 0 A_JumpIf(user_lcounter < 35 ,"SummonSoulSpamLoop")
	OVER K 6 Bright A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	OVER JED 5 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	GoTo Teleport1
  SummonSoul:
	TNT1 A 0
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	OVER DDDDD 1 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	OVER EEGG 1 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	OVER GGGG 1 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	OVER HHHHH 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	OVER II 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	OVER IIIIII 1 Bright A_PainAttack("ImpureSoul~")
	OVER HGEDD 5 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 A 0 A_GiveInventory("MonsterAvoid",1)
	GoTo See
  SummonImpure:
	TNT1 A 0
	TNT1 A 0 A_JumpIfInventory("OverlordSpawnAmmount2",20,"Pain.Crush")
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	OVER DDDDD 1 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	OVER EEGG 1 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	OVER GGGG 1 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	OVER HHHHH 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	OVER II 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 A 0 A_PainAttack("ImpureElemental~")
	TNT1 A 0 A_GiveInventory("OverlordSpawnAmmount2",1)
	OVER HGEDD 5 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	GoTo Teleport1
  SummonFake:
	TNT1 A 0
	TNT1 A 0 A_JumpIfInventory("OverlordSpawnAmmount1",2,"Pain.Crush")
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 A 0 A_SetUserVar("user_pcounter",0)
	OVER DDDDD 1 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	OVER EEGG 1 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	OVER GGGG 1 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	OVER HHHHH 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	OVER II 1 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 A 0 A_PainAttack("FakeOverlord")
	TNT1 A 0 A_GiveInventory("OverlordSpawnAmmount1",1)
	OVER HGEDD 5 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	GoTo Teleport1
  Teleport1:
	TNT1 A 0
	OVER A 1 A_UnSetShootable
	TNT1 A 0 A_ChangeFlag(NOPAIN,1)
	TNT1 A 0 A_ChangeFlag(NOBLOCKMAP,1)
	TNT1 A 0 A_ChangeFlag(ThruSpecies,1)
	TNT1 AAAA 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	OVER AAAAAAAAAA 1 A_FadeOut(0.1,0)
	TNT1 A 2
	TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Wander
	TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Wander
	TNT1 A 2 A_PlayWeaponSound("boss/teleport")
	TNT1 AAAA 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 A 0 A_Facetarget
	OVER AAAAAAAAAA 1 A_FadeIn(0.1)
	TNT1 A 0 A_ChangeFlag(ThruSpecies,0)
	TNT1 A 0 A_ChangeFlag(NOBLOCKMAP,0)
	TNT1 A 0 A_ChangeFlag(NOPAIN,0)
	OVER A 1 A_SetShootable
	Goto See
  Pain:
	TNT1 A 0
	TNT1 A 0 A_ChangeFlag(NOPAIN,1)
	TNT1 A 0 A_ChangeFlag(FRIENDLY,0)
	TNT1 A 0 ACS_NamedExecuteAlways("Hem_SetSpecies",0,4)
	TNT1 A 0 A_TakeInventory("OverlordSpawnAmmount1",1)
	TNT1 A 0 A_TakeInventory("OverlordSpawnAmmount2",5)
	TNT1 A 0 A_TakeInventory("OverlordSpawnAmmount3",10)
	OVER L 7 A_Pain
	TNT1 A 0 A_JumpIf(user_RestHealCounter >= 1,"PainResurrect")
	TNT1 A 0 A_JumpIfHealthLower((ACS_NamedExecuteWithResult("Hem_SpawnHealth")*0.05),"RestoreHealCounter")
	TNT1 A 0 A_JumpIf(user_pcounter > 1,"SummonFake")
	TNT1 A 0 A_JumpIf((user_currenthp - ACS_NamedExecuteWithResult("Hem_GetCurrentHealth")) > 100,"PainResurrect")
	TNT1 A 0 A_JumpIfHealthLower((ACS_NamedExecuteWithResult("Hem_SpawnHealth")*0.25),"Pain.Crush")
	TNT1 A 0 A_Jump(64-(user_healcount*2),"Rage")
	TNT1 A 0 A_Jump(10+(user_healcount*2),"SummonFake")
	Goto Pain.Crush
  AvoidAndAttack:
	"####" "#" 0
	"####" "#" 0 A_Jump(256,"Teleport1",1,8,"Missile")
	"####" "#" 1 A_FaceTarget(45)
	"####" "#" 1 A_FaceTarget(45)
	"####" "#" 1 A_FaceTarget(45)
	"####" "#" 1 A_FaceTarget(45)
	"####" "#" 1 A_FaceTarget(45)
	TNT1 A 0 A_FaceTarget
	TNT1 A 0 A_Recoil(10)
	TNT1 A 0 A_GiveInventory("MonsterAvoid",1)
	Goto Missile
  PainAvoid:
	TNT1 A 0
	TNT1 A 0 A_ChangeFlag(NOPAIN,1)
	OVER J 7 A_Pain
	Goto Pain.Crush
  Pain.Crush:
	TNT1 A 0
	TNT1 A 0 A_ChangeFlag(NOPAIN,1)
	TNT1 A 0 A_Jump(128,"Teleport1")
	TNT1 A 0 A_GiveInventory("MonsterAvoid",1)
	Goto See
  RestoreHealCounter:
	TNT1 A 0
	TNT1 A 0 A_SetUserVar("user_healcount",10)
	TNT1 A 0 A_SetUserVar("user_RestHealCounter",1)
	Goto Teleport1
  PainResurrect:
	TNT1 A 0
	TNT1 A 0 A_SetUserVar("user_pcounter",user_pcounter+1)
	TNT1 A 0 A_GiveInventory("SetMonsterInvul",1)
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	OVER D 3 Bright
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	OVER D 3 Bright A_Pain  
	OVER DDDD 3 Bright A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 A 0 Radius_Quake(10,80,0,24,0)
	TNT1 A 0 A_SpawnItem("OverlordResurrectSFX",0,0,0,0)
	TNT1 A 0 A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	OVER H 3 Bright A_PlaySound("redeemer/see")
	TNT1 A 0 A_JumpIf(user_healcount > 24,"PainResurrectNoInc")
	TNT1 A 0 A_SetUserVar("user_healcount",user_healcount+1)
  PainResurrectNoInc:
	TNT1 A 0 A_JumpIfHealthLower((ACS_NamedExecuteWithResult("Hem_SpawnHealth")*0.50),"PainResurrectSoulAttack1")
	TNT1 A 0 Bright A_GiveInventory("OverlordMassResurrection")
	TNT1 A 0 Bright A_RadiusGive("Health",1250,RGF_MONSTERS,100)
	Goto PainResurrectSoulAttackEnd1
  PainResurrectSoulAttack1:
	TNT1 A 0 Bright A_GiveInventory("OverlordMassResurrection2")
  PainResurrectSoulAttackEnd1:
	TNT1 A 0 A_SpawnItem("OverlordResurrectSFX",0,0,0,0)
	OVER H 3 Bright A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 A 0 A_SpawnItem("OverlordResurrectSFX",0,0,0,0)
	OVER H 3 Bright A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 A 0 A_JumpIfHealthLower((ACS_NamedExecuteWithResult("Hem_SpawnHealth")*0.10),"PainResurrectEnd")
	TNT1 A 0 A_JumpIfHealthLower((ACS_NamedExecuteWithResult("Hem_SpawnHealth")*0.50),"PainResurrectSoulAttack2")
	TNT1 A 0 Bright A_GiveInventory("OverlordMassResurrection3")
	Goto PainResurrectSoulAttackEnd2
  PainResurrectSoulAttack2:
	TNT1 A 0 Bright A_GiveInventory("OverlordMassResurrection4")
  PainResurrectSoulAttackEnd2:
	TNT1 A 0 A_SpawnItem("OverlordResurrectSFX",0,0,0,0)
	OVER H 3 Bright A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 A 0 A_SpawnItem("OverlordResurrectSFX",0,0,0,0)
	OVER H 3 Bright A_SpawnItem("OverlordFlameSpawner",0,0,0,0)  
	TNT1 A 0 A_JumpIfHealthLower((ACS_NamedExecuteWithResult("Hem_SpawnHealth")*0.15),"PainResurrectEnd")
	TNT1 A 0 Bright A_GiveInventory("OverlordMassResurrectionAct")
	TNT1 A 0 A_SpawnItem("OverlordResurrectSFX",0,0,0,0)
	OVER H 3 Bright A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 A 0 A_SpawnItem("OverlordResurrectSFX",0,0,0,0)
	OVER H 3 Bright A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 A 0 A_SpawnItem("OverlordResurrectSFX",0,0,0,0)
	OVER H 3 Bright A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 A 0 A_SpawnItem("OverlordResurrectSFX",0,0,0,0)
	OVER H 3 Bright A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 A 0 A_SpawnItem("OverlordResurrectSFX",0,0,0,0)
	OVER H 3 Bright A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 A 0 A_SpawnItem("OverlordResurrectSFX",0,0,0,0)
	OVER H 3 Bright A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 A 0 A_SpawnItem("OverlordResurrectSFX",0,0,0,0)
	OVER H 3 Bright A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 A 0 A_SpawnItem("OverlordResurrectSFX",0,0,0,0)
	OVER H 3 Bright A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 A 0 A_SpawnItem("OverlordResurrectSFX",0,0,0,0)
	OVER H 3 Bright A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 A 0 A_SpawnItem("OverlordResurrectSFX",0,0,0,0)
	OVER H 3 Bright A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 A 0 A_JumpIfHealthLower((ACS_NamedExecuteWithResult("Hem_SpawnHealth")*0.20),"PainResurrectEnd")
	TNT1 A 0 Bright A_GiveInventory("OverlordMassResurrectionAct")
  PainResurrectEnd: 
	TNT1 A 0 A_SpawnItem("OverlordResurrectSFX",0,0,0,0)
	OVER H 3 Bright A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 A 0 A_SpawnItem("OverlordResurrectSFX",0,0,0,0)
	OVER H 3 Bright A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 A 0 A_SpawnItem("OverlordResurrectSFX",0,0,0,0)
	OVER H 3 Bright A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 A 0 A_SpawnItem("OverlordResurrectSFX",0,0,0,0)
	OVER H 3 Bright A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 A 0 A_SpawnItem("OverlordResurrectSFX",0,0,0,0)
	OVER H 3 Bright A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 A 0 A_SpawnItem("OverlordResurrectSFX",0,0,0,0)
	OVER H 3 Bright A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 A 0 A_SpawnItem("OverlordResurrectSFX",0,0,0,0)
	OVER H 3 Bright A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 A 0 A_SpawnItem("OverlordResurrectSFX",0,0,0,0)
	OVER H 3 Bright A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 A 0 A_SpawnItem("OverlordResurrectSFX",0,0,0,0)
	OVER H 3 Bright A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 A 0 A_SpawnItem("OverlordResurrectSFX",0,0,0,0)
	OVER H 3 Bright A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 A 0 A_SpawnItem("OverlordResurrectSFX",0,0,0,0)
	OVER H 3 Bright A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 A 0 A_SpawnItem("OverlordResurrectSFX",0,0,0,0)
	OVER H 3 Bright A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	OVER D 3 Bright A_SpawnItem("OverlordFlameSpawner",0,0,0,0)
	TNT1 A 0 A_GiveInventory("ResetMonsterInvul",1)
	TNT1 A 0 A_JumpIf(user_healcount < 3,2)
	TNT1 A 0 A_JumpIfTargetInLOS("SummonSoulSpam2",90,JLOSF_DEADNOJUMP|JLOSF_TARGETLOS,1000,0)
	TNT1 A 0
	Goto Teleport1
  Death:
	TNT1 A 0
	OVER M 6 Bright A_Scream
	OVER N 3 Bright
	TNT1 A 0 A_PlaySound("comet/explosion",CHAN_BODY,1.0,0)
	TNT1 AAAAAAAAA 0 Bright A_SpawnItemEx("BlueParticleSpawner",0,0,67,0,0,0,0,128)
	TNT1 A 0 A_Explode(450,600)
	TNT1 AAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("Debris",0,0,59,Random(8,-8),Random(8,-8),Random(8,12),0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION,0)
	TNT1 AAAAAA 0 A_CustomMissile("SmokeFX3",59,0,random(0,360),CMF_AIMDIRECTION,random(0,360))
	TNT1 AAAAAAAAAA 0 A_CustomMissile("Kaboom27",59,0,random(0,360),CMF_AIMDIRECTION,random(0,360))
	OVER O 3 Bright A_NoBlocking
	TNT1 A 0 A_KillChildren
	TNT1 A 0 A_RadiusGive("MysteryItem",80,RGF_PLAYERS,1)
	TNT1 A 0 A_SpawnItemEx("OverlordDeathEnemySpawner")
	OVER PQRSTUV 3 Bright A_FadeOut(0.1,1)
	TNT1 A 3 A_BossDeath
	TNT1 A 1 A_KillMaster
	Stop
  Death:
	OVER MMMMMMMM 1 Bright A_SpawnItemEx("BlueKaboom",random(-20,20),0,random(30,100),frandom(3,6),0,frandom(-6,6),random(0,360))
	TNT1 A 0 A_Scream
	OVER NNNNNNNNNNNNNNNNNNNNNNNNNN 1 Bright A_SpawnItemEx("BlueKaboom",random(-20,20),0,random(30,100),frandom(3,6),0,frandom(-6,6),random(0,360))
	TNT1 A 0 A_NoBlocking
	OVER OOOOOOOOOOOOOOOOOOOOOOOOOO 1 Bright A_SpawnItemEx("BlueKaboom",random(-20,20),0,random(30,100),frandom(3,6),0,frandom(-6,6),random(0,360))
	TNT1 A 0 A_KillChildren
	OVER PPPPPPPPPPPPPQQQQQQQQQQQQQ 1 Bright A_SpawnItemEx("BlueKaboom",random(-20,20),0,random(30,100),frandom(3,6),0,frandom(-6,6),random(0,360))
	TNT1 A 0 A_SpawnItemEx("T3DBFGBoltExp")
	OVER RRRRRRRRRRRRR 1 Bright A_SpawnItemEx("BlueKaboom",random(-20,20),0,random(30,100),frandom(3,6),0,frandom(-6,6),random(0,360))
	TNT1 A 0 A_RadiusGive("MysteryItem",80,RGF_PLAYERS,1)
	TNT1 A 0 A_SpawnItemEx("OverlordDeathEnemySpawner")
	OVER SSSSSSSSSSSSSTTTTTTTTTTUUUUUUUUVVVVVVVV 1 Bright A_SpawnItemEx("BlueKaboom",random(-20,20),0,random(30,100),frandom(3,6),0,frandom(-6,6),random(0,360))
	TNT1 A 3 A_BossDeath
	TNT1 A 1 A_KillMaster
	Stop
	}
}

Actor OverlordDeathEnemySpawner : RandomSpawner
{
  DropItem "ImpureElemental" 256 10
  DropItem "LegendaryRedeemer" 256 5
  DropItem "LegendaryTormentor" 256 2
}