ACTOR EnragedLegendaryPhaseImp : LegendaryPhaseImp
{
//Creator: Trusar
//Origin: Nexus Infinity
//Sprite: EPHA
//Title: "Enraged Legendary Phase Imp"
Health 1200
Speed 20
DamageFactor "Legendary1", 0.0
DamageFactor 0.6
DamageFactor "PlasmaBall", 20
DamageFactor "Legendary", 0.0
DamageFactor "LegendaryPlayer", 0.0
DamageFactor "PDTBFG", 0.25
DamageFactor "PDTBFGTracer", 0.25
DamageFactor "PlayerDevBall", 0.125
DamageFactor "PlayerDevBall2", 0.125
DamageFactor "PlayerDTBFGRailgunSlug", 0.75
DamageFactor "PlayerDevTracer", 0.125
DamageFactor "DBFG10K2", 0.1
DamageFactor "PlayerDBFG10K2", 0.1
DamageFactor "DBFG2", 0.1
DamageFactor "PlayerDBFG2", 0.1
DropItem "EnragedLegendarySphere" 70
DropItem "LegendaryPowerSphere" 85 1
DropItem "EnrLegGreaterDemonicEnergy" 200
DropItem "EnrLegDemonicEnergy" 250
DropItem "LegendaryBossLifeEssence" 256
DropItem "LegendaryBossArmorBonusMax" 256
DropItem "LegendaryBossLifeEssence" 128
DropItem "LegendaryBossArmorBonusMax" 128
DropItem "Enraged Legendary Plasmatic Rifle" 76
DropItem "LegendaryRune" 15 1
Obituary "%o was lost to nowhere by an Enraged Legendary Phase Imp."
HitObituary "%o got slashed through inside the head by a Enraged Legendary Phase Imp."
BloodColor "Red"
Tag "\c[m6]Enraged\c- \c[z3]Legendary Phase Imp\c-"
States
{
  Spawn:
	TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner",0,0,0,0)
	EPHA A 10 A_Look
	Loop
  See:
	TNT1 A 0 A_JumpIf(user_music == 1,3)
	TNT1 A 0 ACS_NamedExecuteAlways("StartMonsterMusic",0,2037)
	TNT1 A 0 A_SetUserVar("user_music",1)
	TNT1 A 0 A_SetTranslucent(1)
	TNT1 A 0 A_SetShootable
	TNT1 A 0 A_ChangeFlag(FRIGHTENED,0)
	TNT1 A 0 A_ChangeFlag(NOPAIN,0)
	TNT1 A 0 A_Jump(46,"Evade","Rush")
	TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner",0,0,0,0)
	EPHA AA 3 A_Chase
	TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner",0,0,0,0)
	EPHA BB 3 A_Chase
	TNT1 A 0 A_SpawnItem("HumanishStep",0,0,0,0)
	TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner",0,0,0,0)
	EPHA CC 3 A_Chase
	TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner",0,0,0,0)
	EPHA DD 3 A_Chase
	TNT1 A 0 A_SpawnItem("HumanishStep",0,0,0,0)
	TNT1 A 0 A_Jump(46,"Phase")	
    Loop
  Rush:
	EPHA A 1 A_Chase
	EPHA A 0 A_Chase
	EPHA A 1 A_Chase
	EPHA A 0 A_Chase
	TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner",0,0,0,0)
	EPHA B 1 A_Chase
	EPHA A 0 A_Chase
	EPHA B 1 A_Chase
	EPHA A 0 A_Chase
	TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner",0,0,0,0)
	EPHA C 1 A_Chase
	EPHA A 0 A_Chase
	EPHA C 1 A_Chase
	EPHA A 0 A_Chase
	TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner",0,0,0,0)
	EPHA D 1 A_Chase
	EPHA A 0 A_Chase
	EPHA D 1 A_Chase
	EPHA A 0 A_Chase
	TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner",0,0,0,0)
	EPHA A 1 A_Chase
	EPHA A 0 A_Chase
	EPHA A 1 A_Chase
	EPHA A 0 A_Chase
	TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner",0,0,0,0)
	EPHA B 1 A_Chase
	EPHA A 0 A_Chase
	EPHA B 1 A_Chase
	EPHA A 0 A_Chase
	TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner",0,0,0,0)
	EPHA C 1 A_Chase
	EPHA A 0 A_Chase
	EPHA C 1 A_Chase
	EPHA A 0 A_Chase
	TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner",0,0,0,0)
	EPHA D 1 A_Chase
	EPHA A 0 A_Chase
	EPHA D 1 A_Chase
	EPHA A 0 A_Chase
	TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner",0,0,0,0)
	TNT1 A 0 A_Jump(48,"See")
	Loop
  Evade:
	TNT1 A 0 A_Jump(128,7)
	TNT1 A 0 ThrustThing(Angle*256/360+64,16,0,0)
	TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner",0,0,0,0)
	EPHA AA 3 A_Chase
	TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner",0,0,0,0)
	EPHA AA 3 A_Chase
	TNT1 A 0 A_Stop
	Goto See
	TNT1 A 0 ThrustThing(Angle*256/360+192,16,0,0)
	TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner",0,0,0,0)
	EPHA AA 3 A_Chase
	TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner",0,0,0,0)
	EPHA AA 3 A_Chase
	TNT1 A 0 A_Stop
	Goto See
  Phased:
	EPHA AABBCCDDAABBCCDD 1 A_ExtChase(0,0)
	EPHA AABBCCDDAABBCCDDAABBCCDDAABBCCDD 1 A_Chase
	TNT1 A 0 A_Jump(24,"UnPhase","PhasedRun")
	Goto Phased+32
  Melee:
	EPHA EF 5 A_FaceTarget
	EPHA G 5 A_MeleeAttack
	EPHA FE 5 A_FaceTarget	
    Goto See
  Missile:
	TNT1 A 0 A_Jump(128,"FastMissile")
	TNT1 A 0 A_Jump(64,"Surprise","Laser")
	TNT1 A 0 A_PlaySound("lphaseimp/attack",7)
	EPHA EF 6 A_FaceTarget
	TNT1 A 0 A_PlaySound("imp/attack")
	EPHA G 5 Bright A_CustomMissile("ILegImpSeekBall", 32, 0, 0)
	EPHA FE 4
	EPHA F 4 A_FaceTarget
	TNT1 A 0 A_PlaySound("imp/attack")
	EPHA G 5 Bright A_CustomMissile("ILegImpSeekBall", 32, 0, 0)
	TNT1 A 0 ThrustThing(angle*256/360+random(69,123),30,0,0)
	EPHA FEF 4
	TNT1 A 0 A_Stop
	TNT1 A 0 A_PlaySound("imp/attack")
	EPHA G 5 Bright A_CustomMissile("ILegImpSeekBall", 32, 0, 0)
	EPHA FE 4
	EPHA F 4 A_FaceTarget
	TNT1 A 0 A_PlaySound("imp/attack")
	EPHA G 5 Bright A_CustomMissile("ILegImpSeekBall", 32, 0, 0)
	TNT1 A 0 ThrustThing(angle*256/360+random(69,123),30,0,0)
	EPHA FEF 4
	TNT1 A 0 A_Stop
	TNT1 A 0 A_PlaySound("imp/attack")
	EPHA G 5 Bright A_CustomMissile("ILegImpSeekBall", 32, 0, 0)
	EPHA FE 4
	EPHA F 4 A_FaceTarget
	TNT1 A 0 A_PlaySound("imp/attack")
	EPHA G 5 Bright A_CustomMissile("ILegImpSeekBall", 32, 0, 0)
	EPHA FEF 3
	TNT1 A 0 A_Stop
	Goto See
  FastMissile:
	TNT1 A 0 A_PlaySound("lphaseimp/attack",7)
	EPHA EF 4 A_FaceTarget
	TNT1 A 0 A_PlaySound("imp/attack")
	EPHA G 3 Bright A_CustomMissile("ILegImpSeekBall", 32, 0, 0)
	EPHA FE 2
	EPHA F 2 A_FaceTarget
	TNT1 A 0 A_PlaySound("imp/attack")
	EPHA G 3 Bright A_CustomMissile("ILegImpSeekBall", 32, 0, 0)
	TNT1 A 0 ThrustThing(angle*256/360+random(69,123),30,0,0)
	EPHA FEF 2
	TNT1 A 0 A_Stop
	TNT1 A 0 A_PlaySound("imp/attack")
	EPHA G 3 Bright A_CustomMissile("ILegImpSeekBall", 32, 0, 0)
	EPHA FE 2
	EPHA F 2 A_FaceTarget
	TNT1 A 0 A_PlaySound("imp/attack")
	EPHA G 3 Bright A_CustomMissile("ILegImpSeekBall", 32, 0, 0)
	TNT1 A 0 ThrustThing(angle*256/360+random(69,123),30,0,0)
	EPHA FEF 2
	TNT1 A 0 A_Stop
	TNT1 A 0 A_PlaySound("imp/attack")
	EPHA G 3 Bright A_CustomMissile("ILegImpSeekBall", 32, 0, 0)
	EPHA FE 2
	EPHA F 2 A_FaceTarget
	TNT1 A 0 A_PlaySound("imp/attack")
	EPHA G 3 Bright A_CustomMissile("ILegImpSeekBall", 32, 0, 0)
	EPHA FEF 3
	TNT1 A 0 A_Stop
	Goto See
  Laser:
	TNT1 A 0 A_PlaySound("lphaseimp/attack",7)
	EPHA EF 6 A_FaceTarget
	TNT1 A 0 A_PlaySound("imp/attack")
	EPHA G 4 Bright A_CustomMissile("ELegPhaseLaser", 32, 0, 0)
	TNT1 A 0 A_Facetarget
	EPHA G 4 Bright A_CustomMissile("ELegPhaseLaser", 32, 0, 0)
	TNT1 A 0 A_Facetarget
	EPHA G 4 Bright A_CustomMissile("ELegPhaseLaser", 32, 0, 0)
	TNT1 A 0 A_Facetarget
	EPHA G 4 Bright A_CustomMissile("ELegPhaseLaser", 32, 0, 0)
	TNT1 A 0 A_Facetarget
	EPHA G 4 Bright A_CustomMissile("ELegPhaseLaser", 32, 0, 0)
	TNT1 A 0 A_Facetarget
	EPHA G 4 Bright A_CustomMissile("ELegPhaseLaser", 32, 0, 0)
	TNT1 A 0 A_Facetarget
	EPHA G 4 Bright A_CustomMissile("ELegPhaseLaser", 32, 0, 0)
	TNT1 A 0 A_Facetarget
	EPHA G 4 Bright A_CustomMissile("ELegPhaseLaser", 32, 0, 0)
	TNT1 A 0 A_Facetarget
	EPHA G 4 Bright A_CustomMissile("ELegPhaseLaser", 32, 0, 0)
	TNT1 A 0 A_Facetarget
	TNT1 A 0 ThrustThing(angle*256/360+random(133,187),30,0,0)
	EPHA F 6
	TNT1 A 0 A_MonsterRefire(64,"See")
	TNT1 A 0 A_Jump(100,"See")
	Goto Laser+1
  Surprise:
	TNT1 A 0 A_PlaySound("phaseimp/teleport")
	EPHA E 2 A_FaceTarget
	TNT1 A 0 A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
	EPHA E 1 A_SetTranslucent(0.75)
	TNT1 A 0 A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
	EPHA E 1 A_SetTranslucent(0.55)
	TNT1 A 0 A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
	EPHA E 1 A_SetTranslucent(0.35)
	TNT1 A 0 A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
	EPHA E 1 A_SetTranslucent(0.15)
	TNT1 A 0 A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
	Goto SurprisEPHAd
  SurprisEPHAd:
	EPHA A 1 A_ExtChase(0,0)
	EPHA A 0 A_ExtChase(0,0)
	EPHA A 1 A_ExtChase(0,0)
	EPHA A 0 A_ExtChase(0,0)
	EPHA B 1 A_ExtChase(0,0)
	EPHA A 0 A_ExtChase(0,0)
	EPHA B 1 A_ExtChase(0,0)
	EPHA A 0 A_ExtChase(0,0)
	EPHA C 1 A_ExtChase(0,0)
	EPHA A 0 A_ExtChase(0,0)
	EPHA C 1 A_ExtChase(0,0)
	EPHA A 0 A_ExtChase(0,0)
	EPHA D 1 A_ExtChase(0,0)
	EPHA A 0 A_ExtChase(0,0)
	EPHA D 1 A_ExtChase(0,0)
	EPHA A 0 A_ExtChase(0,0)
	TNT1 A 0 A_JumpIfCloser(200,"SurpriseUnphase")
	TNT1 A 0 A_Jump(8,"Unphase")
	Loop
  SurpriseUnphase:
	TNT1 A 0 A_SetTranslucent(1)
	TNT1 A 0 A_PlaySound("lphaseimp/Sight",7)
	EPHA EF 6 A_FaceTarget
	TNT1 A 0 A_PlaySound("imp/attack")
	EPHA G 5 Bright A_CustomMissile("ILegImpSeekBall", 32, 0, 0)
	EPHA FE 4
	EPHA F 4 A_FaceTarget
	TNT1 A 0 A_PlaySound("imp/attack")
	EPHA G 5 Bright A_CustomMissile("ILegImpSeekBall", 32, 0, 0)
    EPHA FE 4
	EPHA F 4 A_FaceTarget
	TNT1 A 0 A_PlaySound("imp/attack")
	EPHA G 5 Bright A_CustomMissile("ILegImpSeekBall", 32, 0, 0)
	TNT1 A 0 A_Jump(128,"PhaseRun")
	Goto See
  Phase:
	TNT1 A 0 A_PlaySound("phaseimp/teleport")
	EPHA E 2 A_FaceTarget
	TNT1 A 0 A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
	EPHA E 1 A_SetTranslucent(0.75)
	TNT1 A 0 A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
	EPHA E 1 A_SetTranslucent(0.55)
	TNT1 A 0 A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
	EPHA E 1 A_SetTranslucent(0.35)
	TNT1 A 0 A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
	EPHA E 1 A_SetTranslucent(0.15)
	TNT1 A 0 A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
	TNT1 AA 0 A_SpawnItemEx("FakeEnragedLegendaryPhaseImp",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERPOINTERS)
	Goto Phased
  UnPhase:
	TNT1 A 0 A_PlaySound("phaseimp/teleport")
	TNT1 A 0 A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
	EPHA E 1 A_SetTranslucent(0.15)
	TNT1 A 0 A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
	EPHA E 1 A_SetTranslucent(0.35)
	TNT1 A 0 A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
	EPHA E 1 A_SetTranslucent(0.55)
	TNT1 A 0 A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
	EPHA E 1 A_SetTranslucent(0.75)
	TNT1 A 0 A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
	TNT1 A 0 A_SetTranslucent(1)
	EPHA E 2 A_FaceTarget	
    Goto See
  Pain:
	TNT1 A 0 A_Jump(32,"PhaseRun")
	EPHA H 2
	EPHA H 2 A_Pain
	Goto See
  PhaseRun:
	TNT1 A 0 A_UnSetShootable
	TNT1 A 0 A_ChangeFlag(FRIGHTENED,1)
	TNT1 A 0 A_PlaySound("phaseimp/teleport")
	EPHA E 2 A_FaceTarget
	TNT1 A 0 A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
	EPHA E 1 A_SetTranslucent(0.75)
	TNT1 A 0 A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
	EPHA E 1 A_SetTranslucent(0.55)
	TNT1 A 0 A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
	EPHA E 1 A_SetTranslucent(0.35)
	TNT1 A 0 A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
	EPHA E 1 A_SetTranslucent(0.15)
	TNT1 A 0 A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
	Goto PhasedRun
  PhasedRun:
	EPHA A 1 A_ExtChase(0,0)
	EPHA A 0 A_ExtChase(0,0)
	EPHA A 1 A_ExtChase(0,0)
	EPHA A 0 A_ExtChase(0,0)
	EPHA B 1 A_ExtChase(0,0)
	EPHA A 0 A_ExtChase(0,0)
	EPHA B 1 A_ExtChase(0,0)
	EPHA A 0 A_ExtChase(0,0)
	EPHA C 1 A_ExtChase(0,0)
	EPHA A 0 A_ExtChase(0,0)
	EPHA C 1 A_ExtChase(0,0)
	EPHA A 0 A_ExtChase(0,0)
	EPHA D 1 A_ExtChase(0,0)
	EPHA A 0 A_ExtChase(0,0)
	EPHA D 1 A_ExtChase(0,0)
	EPHA A 0 A_ExtChase(0,0)
	EPHA A 1 A_ExtChase(0,0)
	EPHA A 0 A_ExtChase(0,0)
	EPHA A 1 A_ExtChase(0,0)
	EPHA A 0 A_ExtChase(0,0)
	EPHA B 1 A_ExtChase(0,0)
	EPHA A 0 A_ExtChase(0,0)
	EPHA B 1 A_ExtChase(0,0)
	EPHA A 0 A_ExtChase(0,0)
	EPHA C 1 A_ExtChase(0,0)
	EPHA A 0 A_ExtChase(0,0)
	EPHA C 1 A_ExtChase(0,0)
	EPHA A 0 A_ExtChase(0,0)
	EPHA D 1 A_ExtChase(0,0)
	EPHA A 0 A_ExtChase(0,0)
	EPHA D 1 A_ExtChase(0,0)
	EPHA A 0 A_ExtChase(0,0)
	TNT1 A 0 A_Jump(64,"UnPhaseRun")
	Loop
  UnPhaseRun:
	TNT1 A 0 A_SetShootable
	TNT1 A 0 A_ChangeFlag(FRIGHTENED,0)
	TNT1 A 0 A_PlaySound("phaseimp/teleport")
	TNT1 A 0 A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
	EPHA E 1 A_SetTranslucent(0.15)
	TNT1 A 0 A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
	EPHA E 1 A_SetTranslucent(0.35)
	TNT1 A 0 A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
	EPHA E 1 A_SetTranslucent(0.55)
	TNT1 A 0 A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
	EPHA E 1 A_SetTranslucent(0.75)
	TNT1 A 0 A_SpawnItem("LHellionSmokeSpawner",0,0,0,0)
	TNT1 A 0 A_SetTranslucent(1)
	EPHA E 2 A_FaceTarget	
    Goto See
  Death:
	EPHA I 8 A_SetTranslucent(1)
	EPHA J 8 A_Scream
	EPHA K 6
	EPHA L 6 A_Fall
	EPHA M -1
	Stop
  XDeath:
	TNT1 A 0 A_SetTranslucent(1)
	EPHA N 3 
	EPHA O 3 A_XScream
	EPHA P 3 A_SpawnItemEx("GibbedGenerator",0,0,0,0,0,0,0,128,0)
	EPHA Q 3 A_Fall
	EPHA RST 3
	EPHA U -1
	Stop
	}
}

Actor FakeEnragedLegendaryPhaseImp : EnragedLegendaryPhaseImp
{
+NOTARGET
-COUNTKILL
+THRUSPECIES
-BOSS
Health 150
Renderstyle Translucent
Alpha 0.15
SeeSound " "
DeathSound " "
Tag "\c[m6]Enraged\c- \c[z3]Legendary Phase Imp\c-"
States
{
  Spawn:
	EPHA AABBCCDDAABBCCDD 1 A_Wander
	EPHA AABBCCDDAABBCCDDAABBCCDDAABBCCDD 1 A_ExtChase(0,0)
	TNT1 A 0 A_Die
	Goto Death
  See:
	TNT1 A 0 A_SetTranslucent(1)
	TNT1 A 0 A_SetShootable
	TNT1 A 0 A_ChangeFlag(FRIGHTENED,0)
	TNT1 A 0 A_ChangeFlag(NOPAIN,0)
	TNT1 A 0 A_Jump(46,"Evade","Rush")
	TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner",0,0,0,0)
	EPHA AA 3 A_Chase
	TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner",0,0,0,0)
	EPHA BB 3 A_Chase
	TNT1 A 0 A_SpawnItem("HumanishStep",0,0,0,0)
	TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner",0,0,0,0)
	EPHA CC 3 A_Chase
	TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner",0,0,0,0)
	EPHA DD 3 A_Chase
	TNT1 A 0 A_SpawnItem("HumanishStep",0,0,0,0)
	TNT1 A 0 A_Jump(46,"Phase")	
    Loop
  Pain:
	TNT1 A 0 A_Jump(32,"PhaseRun")
	EPHA H 2
	EPHA H 2 A_Pain
	Goto See
  Death:
	EPHA H 5
	TNT1 AAA 0 A_CustomMissile("SmokeFX3",Random(10,60),0,random(0,360),2,random(0,360))  
	TNT1 AAA 0 A_CustomMissile("EKaboomLN",random(10,60),random(10,-10),random(0,360),2,random(0,360))
	EPHA H 1 A_FadeOut(0.1,1)
	Wait
  }
}

Actor ELegPhaseLaser : ELegRedLaser
{
Damage 8
}