ACTOR EnragedLegendaryFiend
{
//$Category Monsters/ILCA
//$Sprite EFNDA1
//$Title "Enraged Legendary Fiend"
Health 1550
PainChance 25
Speed 16
Radius 30
Height 56
Mass 550
Monster
+BOSS
+BOSSDEATH
+FLOORCLIP
+MISSILEMORE
+MISSILEEVENMORE
+QUICKTORETALIATE 
+NOICEDEATH
+DONTGIB
+DONTHURTSPECIES
+DONTHARMSPECIES
+NOTARGET
+NOTIMEFREEZE
+NORADIUSDMG
+NOFEAR
+BRIGHT
Species "Fiends"
SeeSound "LegFiend/Sight"
PainSound "LegFiend/Pain"
DeathSound "LegFiend/Death"
ActiveSound "LegFiend/Active"
AttackSound "LegFiend/Melee"
BloodColor "Red"
Scale 1.2
MeleeDamage 28
MeleeRange 84
DamageFactor 0.55
DamageFactor "Legendary", 0.0
DamageFactor "LegendaryPlayer", 0.0
DamageFactor "Legendary1", 0.0
DamageFactor "LegendaryGuru", 0.0
DamageFactor "LegendaryGuruPlayer", 0.1
DamageFactor "PDTBFG", 0.15
DamageFactor "PDTBFGTracer", 0.15
DamageFactor "PlayerDevBall", 0.115
DamageFactor "PlayerDevBall2", 0.115
DamageFactor "PlayerDTBFGRailgunSlug", 0.115
DamageFactor "PlayerDevTracer", 0.115
DamageFactor "FiendFire", 0.0
DamageFactor "DTFiendEx", 0.0
DamageFactor "DBFG10K2", 0.65
DamageFactor "PlayerDBFG10K2", 0.65
DamageFactor "DBFG2", 0.65
DamageFactor "PlayerDBFG2", 0.65
DamageFactor "PlayerDTRG", 0.5
DropItem "EnragedLegendaryArmor" 80 1
DropItem "LegendaryPowerSphere" 100 1
DropItem "ILDemonAmmoBox" 220
DropItem "ILDemonAmmo" 256
DropItem "LegTimeFreezeSphere" 70
DropItem "LegendaryBossLifeEssence" 256
DropItem "LegendaryBossArmorBonusMax" 256
DropItem "LegendaryBossLifeEssence" 128
DropItem "LegendaryBossArmorBonusMax" 128
DropItem "Enraged Legendary Plasmatic Rifle" 30 1
Obituary "%o was shredded into dust by an Enraged Legendary Fiend."
HitObituary "%o was turned into ground beef by an Enraged Legendary Fiend."
Tag "\c[m6]Enraged\c- \c[z3]Legendary Fiend\c-"
var int user_ragewait;
var int user_music;
var int user_ragecount;
States
{
  Spawn:
    TNT1 A 0 NoDelay A_Jump(100,"Remove")
  Idle:
    TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner")
    EFND A 12 Bright A_Look
	TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner")
	EFND Q 12 Bright A_Look
	TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner")
    Loop
  Remove:
	TNT1 A 1
	TNT1 A 0 A_SpawnItemEx("Demon",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 A_ChangeFlag("COUNTKILL", FALSE)
	TNT1 A 0
	Stop
  See:
    TNT1 A 0 A_JumpIf(user_music == 1,3)
    TNT1 A 0 ACS_NamedExecuteAlways("StartMonsterMusic",0,408)
	TNT1 A 0 A_SetUserVar("user_music",1)
	TNT1 A 0 A_SetUserVar("user_ragecount",0)
	TNT1 A 0 A_Jump(110,"Rush")
	TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner")
	TNT1 A 0 A_PlaySound("blooddemon/walk")
    EFND AABB 2 Bright A_Chase
	TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner")
    TNT1 A 0 A_PlaySound("blooddemon/walk")
    EFND CCDD 2 Bright A_Chase
	TNT1 A 0 A_Jump(35,"Teleport")
    Loop
  Rush:
	TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner")
	TNT1 A 0 A_PlaySound("blooddemon/walk")
	EFND AA 0 A_Chase
	EFND A 1 Bright A_SpawnItemEx("ELFGhost",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION)
	EFND AA 0 A_Chase
	EFND A 1 Bright A_SpawnItemEx("ELFGhost",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION)
	EFND AA 0 A_Chase
	EFND B 1 Bright A_SpawnItemEx("ELFGhost",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION)
	EFND AA 0 A_Chase
	EFND B 1 Bright A_SpawnItemEx("ELFGhost",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION)
	TNT1 A 0 A_SpawnItem("EnragedHellionSmokeSpawner")
	TNT1 A 0 A_PlaySound("blooddemon/walk")
	EFND AA 0 A_Chase
	EFND C 1 Bright A_SpawnItemEx("ELFGhost",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION)
	EFND AA 0 A_Chase
	EFND C 1 Bright A_SpawnItemEx("ELFGhost",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION)
	EFND AA 0 A_Chase
	EFND D 1 Bright A_SpawnItemEx("ELFGhost",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION)
	EFND AA 0 A_Chase
	EFND D 1 Bright A_SpawnItemEx("ELFGhost",0,0,0,0,0,0,0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION)
	TNT1 A 0 A_Jump(15,"Teleport")
	TNT1 A 0 A_Jump(87,"See")
	Loop
 Teleport:
    EFND A 1 Bright A_UnSetShootable
	EFND AAAA 0 A_SpawnItem("EnragedHellionSmokeSpawner")
	EFND AAAAAAAAAA 1  A_FadeOut(0.1,0)
	EFND A 2 
	EFND AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Wander
	EFND AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Wander
    EFND A 1 A_PlayWeaponSound("boss/teleport")
	EFND AAAA 0 A_SpawnItem("EnragedHellionSmokeSpawner")
	EFND AAAAAAAAAA 1 A_FadeIn(0.1)
    EFND A 1 Bright A_SetShootable
    Goto See		
  Missile:
    TNT1 A 0 A_SetShootable
    TNT1 A 0 A_UnsetInvulnerable
    TNT1 A 0 A_SetTranslucent(1)
    TNT1 A 0 A_Jump(58,"Rage")
    TNT1 A 0 A_Jump(24,"Ripperr")
    TNT1 A 0 A_JumpIfCloser(250,"Lunge")
  Normal:		
	EFND EF 4 Bright A_FaceTarget
    EFND G 6 Bright A_CustomMissile("ELegFiendBall2",32)
	EFND EF 4 Bright A_FaceTarget
    EFND G 6 Bright A_CustomMissile("ELegFiendBall2",32)	
	EFND EF 4 Bright A_FaceTarget
    EFND G 6 Bright A_CustomMissile("ELegFiendBall2",32)	
    EFND E 2 Bright A_FaceTarget
    Goto See	
  Ripperr:		
	TNT1 A 0 A_SpawnItemEx("LegRipperrMouthRedKaboom", 8, 0, 36)
	EFND E 3 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItemEx("LegRipperrMouthRedKaboom", 8, 0, 36)
	EFND E 3 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItemEx("LegRipperrMouthRedKaboom", 8, 0, 36)
	EFND E 3 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItemEx("LegRipperrMouthRedKaboom", 8, 0, 36)
	EFND F 3 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItemEx("LegRipperrMouthRedKaboom", 8, 0, 36)
	EFND F 3 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItemEx("LegRipperrMouthRedKaboom", 8, 0, 36)
	EFND F 3 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItemEx("LegRipperrMouthBreatheRedKaboom", 8, 0, 36)
    EFND GGG 2 Bright A_CustomMissile("ELegFiendBall",32,0,random(-2,2))
	EFND G 0 A_FaceTarget
	EFND GGG 2 Bright A_CustomMissile("ELegFiendBall",32,0,random(-2,2))
    EFND G 0 A_FaceTarget
	EFND GGG 2 Bright A_CustomMissile("ELegFiendBall",32,0,random(-2,2))
	EFND G 0 A_FaceTarget
	EFND GGG 2 Bright A_CustomMissile("ELegFiendBall",32,0,random(-2,2))
    EFND E 2 Bright A_FaceTarget
    Goto See
  Lunge:
    TNT1 A 0 A_Jump(64,"Normal")
	TNT1 A 0 A_PlaySound("LegFiend/Melee")
	EFND EF 6 Bright A_FaceTarget
	TNT1 A 0 A_ChangeFlag(SLIDESONWALLS,1)
	TNT1 A 0 ThrustThingZ(0,20,0,1)
    EFND F 2 Bright A_Recoil(-26)
	EFND F 3 Bright A_CustomMissile("ELFLunge",18,0,0,CMF_AIMDIRECTION)
	EFND G 6 Bright
	EFND G 2 Bright A_ScaleVelocity(0.2)
	TNT1 A 0 A_ChangeFlag(SLIDESONWALLS,0)
	EFND G 1 Bright A_ScaleVelocity(0)
	Goto See
  Rage:	
    EFND G 1 A_JumpIfCloser(1800,1)
    Goto Normal
    EFND G 1 Bright A_PlaySound("LegFiend/Active")
	EFND G 0 A_SetInvulnerable
	EFND G 1 Bright A_FaceTarget
  RageWait:
    TNT1 A 0 A_JumpIf(user_ragewait >= 14,"RageGo")
	TNT1 A 0 A_SetUserVar("user_ragewait",user_ragewait+1)
    EFND G 0 A_JumpIfTargetInLos(2)
	EFND G 0 A_Jump(256,2)
	EFND G 0 A_FaceTarget
	EFND G 2 Bright A_SpawnItem("ELFiendFlameSpawner")
	Loop
  RageGo:
	TNT1 A 0 A_Jump(96,"Rage2")
    TNT1 A 0 A_SetUserVar("user_ragewait",0) 
	TNT1 A 0 A_SetUserVar("user_ragecount",user_ragecount+1)
	EFND G 0 A_UnSetInvulnerable
	TNT1 A 0 ThrustThingZ(0,30,0,1)
    TNT1 A 0 A_ChangeFlag(SLIDESONWALLS,1)
	TNT1 A 0 A_ChangeFlag(NOPAIN,1)
	EFND G 9 Bright
	EFND G 0 A_JumpIfTargetInLos(2)
	EFND G 0 A_Jump(256,2)
	EFND G 0 A_FaceTarget
	EFND G 3 Bright
	TNT1 A 0 ThrustThingZ(0,25,0,1)
    EFND F 2 A_Recoil(-110)
	TNT1 A 0 A_PlaySound("LegFiend/Melee")
  RageLoop:
    TNT1 A 0 A_JumpIf(user_ragewait >= 20,"RageEnd")
	TNT1 A 0 A_SetUserVar("user_ragewait",user_ragewait+1)
	EFND G 0 A_SpawnItemEx("ELFGhost",0,0,0,0,0,0,0,128)
	EFND G 0 A_SpawnItem("ELFiendFlameSpawner")
	EFND G 0 A_CustomMissile("BigELFLunge",18,0,0,CMF_AIMDIRECTION)
	EFND G 2 Bright A_FaceTarget
	Loop
  RageEnd:
    TNT1 A 0 A_SetUserVar("user_ragewait",0)
	TNT1 A 0 A_ChangeFlag(SLIDESONWALLS,0)
	TNT1 A 0 A_ChangeFlag(NOPAIN,0)
	TNT1 A 0 A_JumpIf(user_ragecount >= 3,"See")
	TNT1 A 0 A_Jump(148,"RageGo")
	TNT1 A 0 A_SetUserVar("user_ragecount",0)
	Goto See
  Rage2:	
    TNT1 A 0 A_JumpIf(user_ragecount >= 2,"RageGo")
    TNT1 A 0 A_SetUserVar("user_ragewait",0) 
	EFND G 0 A_FaceTarget
	TNT1 A 0 A_SpawnItemEx("ELFLungeGhost")
	EFND G 20
	TNT1 A 0 A_FaceTarget
	TNT1 A 0 A_SpawnItemEx("ELFLungeGhost")
	EFND G 20 
	TNT1 A 0 A_SetUserVar("user_ragecount",user_ragecount+1)
	Goto RageGo
  Melee:
    TNT1 A 0 A_Jump(128,"Flamethrower")
	EFND EF 2 Bright A_FaceTarget
    EFND G 2 Bright A_MeleeAttack
    EFND E 2 Bright A_FaceTarget
    Goto See
  Flamethrower:
	EFND EF 5 A_FaceTarget
	TNT1 A 0 A_PlaySound("magma/firebreath")
	TNT1 A 0 A_FaceTarget
	EFND FFF 2 Bright A_CustomMissile("ELegFiendFlameBreath", 32, 0, Random(6,-6))
	TNT1 A 0 A_FaceTarget
    EFND FFF 2 Bright A_CustomMissile("ELegFiendFlameBreath", 32, 0, Random(6,-6))
	TNT1 A 0 A_FaceTarget
    EFND FFF 2 Bright A_CustomMissile("ELegFiendFlameBreath", 32, 0, Random(6,-6))
	TNT1 A 0 A_FaceTarget		
	EFND FFF 2 Bright A_CustomMissile("ELegFiendFlameBreath", 32, 0, Random(6,-6))
    EFND E 5
	Goto See
  Pain:
  	TNT1 A 0 A_ChangeFlag(SLIDESONWALLS,0)
	TNT1 A 0 A_Jump(35,"Teleport")
	TNT1 A 0 A_Jump(88,"PainMissile")
	TNT1 A 0 A_SetUserVar("user_ragecount",0)
	TNT1 A 0 A_SetUserVar("user_ragewait",0)
    EFND H 2 Bright
    EFND H 2 Bright A_Pain
    Goto See
  PainMissile:
    EFND H 2 Bright
    EFND H 2 Bright A_Pain
    Goto Missile
  Death:
  	TNT1 A 0 A_ChangeFlag(SLIDESONWALLS,0)
    EFND I 8 A_StopSound(6)
	EFND J 0 A_PlaySound("Gore/Splat")
    EFND J 0 A_SpawnItemEx("ELFGibbedGenerator",0,0,0,0,0,0,0,128,0)
    EFND J 8 A_Scream
    EFND K 4 
    EFND L 4 A_NoBlocking
    EFND M 4 
    EFND N -1
    Stop
  }
}

ACTOR ELFLunge
{
   Height 16
   Radius 16
   Speed 27
   Damage (15*Random(4,8))
   Species "Fiends"
   SeeSound ""  
   DeathSound ""
   PROJECTILE
   Damagetype "FiendFire"
   +NOTIMEFREEZE
   States
   {
   Spawn:
	TNT1 A 4
    Stop
    }
}

ACTOR BigELFLunge : BigLFLunge
{
Damage 48
Speed 0
+EXTREMEDEATH
+FORCERADIUSDMG
+NOTIMEFREEZE
States
{
Spawn:
TNT1 A 2
TNT1 A 1 A_Explode(72,282,0)
Stop
Death:
TNT1 A 2
TNT1 A 1 A_Explode(72,282,0)
Stop
}
}

Actor ELegFiendBall
{
  Radius 4
  Height 6
  Speed 70
  Damage 12
  Renderstyle Add
  Alpha 0.75
  SeeSound "lfball1/shot"
  DeathSound "lfball1/exp" 
  PROJECTILE
  Damagetype "FiendFire"
  DECAL Cardinal15KLightning1
  +RIPPER
  +HEXENBOUNCE
  +NOTIMEFREEZE
  BounceCount 4
  States
  {
  Spawn:
    TNT1 A 0
    EFB1 ABCDEFGHABCDEFGH 2 Bright A_SpawnItemEx("LegFiendBallTrail",0,0,0,0,0,0,0,128)
	Loop
  Death:
	TNT1 A 0
	TNT1 A 0 A_SpawnItemEx("RedParticleSpawner", 0, 0, 0, 0, 0, 0, 0, 128) 
	TNT1 AAA 0 A_CustomMissile("EKaboomLN", 0, 0, random(0,360), 2, random(0,360))
	TNT1 AAA 0 A_CustomMissile("LegendarySmokeFX4", 0, 0, random(0,360), 2, random(0,360))
    EFB1 IJK 4 Bright A_FadeOut(0.10)
    Stop
  }
}

Actor ELegFiendBallTrail
{       
   	PROJECTILE
   	+NOCLIP
	+CLIENTSIDEONLY
    +NOTIMEFREEZE
    Scale 1
    Renderstyle ADD
	Alpha 0.6
	Scale 0.8
	States
	{   
  Spawn:
	TNT1 A 0
    TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(304) == 1, "Toaster")
	EFB1 ABCDEFGH 1 Bright A_FadeOut(0.05)
	Stop
  Toaster:
    TNT1 A 0
	Stop
	}
}

ACTOR ELegFiendBall2
{
   Radius 8
   Height 8
   Speed 34
   Damage 25
   Damagetype "FiendFire"
   SpawnID 250
   Scale 1.0
   PROJECTILE
   RENDERSTYLE ADD
   DECAL DoomImpScorch
   ALPHA 0.95
   SeeSound "monsters/newfireshoot"
   DeathSound "monsters/newfireexplode"
   +NOTIMEFREEZE
   States
   {
   Spawn: 
   	  TNT1 A 0 A_CStaffMissileSlither
      EFB2 A 1 Bright A_SpawnItemEx("ELegFiendBall2Trail",0,0,0,0,0,0,0,128)
	  TNT1 A 0 A_CStaffMissileSlither
      EFB2 A 1 Bright A_SpawnItemEx("ELegFiendBall2Trail",0,0,0,0,0,0,0,128)
      Loop
   Death:
	  TNT1 A 0
	  TNT1 A 0 A_Explode(32,64,0)
	  TNT1 A 0 A_SpawnItemEx("RedParticleSpawner", 0, 0, 0, 0, 0, 0, 0, 128) 
	  TNT1 AAA 0 A_CustomMissile("EKaboomLN", 0, 0, random(0,360), 2, random(0,360))
	  TNT1 AAA 0 A_CustomMissile("LegendarySmokeFX4", 0, 0, random(0,360), 2, random(0,360))
      EFB2 C 5 Bright A_Explode(8,32,0)
      EFB2 DE 5 Bright
      stop
   }
}

Actor ELegFiendBall2Trail
{       
   	PROJECTILE
   	+NOCLIP
	+CLIENTSIDEONLY
    +NOTIMEFREEZE
    Scale 1
    Renderstyle ADD
	Alpha 0.6
	Scale 0.8
	States
	{   
	Spawn:
	    TNT1 A 0
    TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(304) == 1, "Toaster")
	    EFB2 AB 4 Bright A_FadeOut(0.05)
	    Stop
	  Toaster:
    TNT1 A 0
	Stop	
	}
}

Actor ELFGhost
{
Scale 1.2
RENDERSTYLE Translucent
Alpha 0.75
+NOGRAVITY
+CLIENTSIDEONLY
+DONTSPLASH
+NOINTERACTION
+NOCLIP
+NOTIMEFREEZE
States
{
Spawn:
    TNT1 A 0
    TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(304) == 1, "Toaster")
    EFND A 2 A_FadeOut(0.09)
    Loop
  Toaster:
    TNT1 A 0
	Stop	
    }
}

Actor ELFLungeGhost : ELFGhost
{
Monster
Species "Fiends"
-COUNTKILL
-NOINTERACTION
-NOGRAVITY
-NOCLIP
+THRUSPECIES
Mass 550
Alpha 0.6
var int user_ragewait;
States
{
Spawn:
	EFND G 1
	TNT1 A 0 ThrustThingZ(0,35,0,1)
    TNT1 A 0 A_ChangeFlag(SLIDESONWALLS,1)
	EFND G 9 Bright
	EFND G 0 A_FaceTarget
	EFND G 3 Bright
	TNT1 A 0 ThrustThingZ(0,25,0,1)
    EFND F 2 A_Recoil(-100)
	TNT1 A 0 A_PlaySound("LegFiend/Melee")
RageLoop:
    TNT1 A 0 A_JumpIf(user_ragewait >= 10,"Death")
	TNT1 A 0 A_SetUserVar("user_ragewait",user_ragewait+1)
	EFND G 0 A_SpawnItem("ELFiendFlameSpawner",0,0,0,0)
	EFND G 0 A_CustomMissile("BigELFGhostLunge",18,0,0,CMF_AIMDIRECTION)
	EFND G 2 Bright A_FaceTarget
	Loop
Death:
	EFND GGGGGGG 2 A_FadeOut(0.1)
	Stop
	}
}

ACTOR BigELFGhostLunge : BigLFLunge
{
Damage 10
Speed 0
+EXTREMEDEATH
+FORCERADIUSDMG
+NOTIMEFREEZE
States
{
Spawn:
TNT1 A 2
TNT1 A 1 A_Explode(8,64,0)
Stop
Death:
TNT1 A 2
TNT1 A 1 A_Explode(8,64,0)
Stop
}
}

ACTOR ELFGibbedGenerator : GibbedGenerator
{ 
+NOTIMEFREEZE
States 
{ 
Spawn:
	TNT1 A 0
	TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(304) == 1, "Toaster")
	TNT1 AA 0 A_CustomMissile("RedBloodCloud", random(25,50), 0, random(0,360), 2, random(0,360))
	TNT1 AAAAAA 0 A_SpawnItemEx("NewFlyingBlood",0,0,Random(25,50),Random(6,-6),Random(6,-6),Random(4,6))
	TNT1 A 0 A_SpawnItemEx("BodyPart1",0,0,Random(25,50),Random(10,-10),Random(10,-10),Random(8,10))
	TNT1 A 2 A_SpawnItemEx("BodyPart2",0,0,Random(25,50),Random(10,-10),Random(10,-10),Random(8,10))
	TNT1 AA 0 A_CustomMissile("RedBloodCloud", random(25,50), 0, random(0,360), 2, random(0,360))
	TNT1 AAAAAA 0 A_SpawnItemEx("NewFlyingBlood",0,0,Random(25,50),Random(6,-6),Random(6,-6),Random(4,6))
	TNT1 A 0 A_SpawnItemEx("BodyPart3",0,0,Random(25,50),Random(10,-10),Random(10,-10),Random(8,10))
	TNT1 A 1 A_SpawnItemEx("BodyPart4",0,0,Random(25,50),Random(10,-10),Random(10,-10),Random(8,10))
	Stop
	}
}
ACTOR ELFiendFlameSpawner : LegendaryRedParticleSpawner
{
  +CLIENTSIDEONLY
  States
  {
  Spawn:
    TNT1 A 0
    TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(304) == 1, "Toaster")
    TNT1 AAAAAA 0 A_SpawnItemEx("ELFiendFlame",random(20,-20),random(20,-20),random(40,80),0,0,random(2,6),0,128,0)
    TNT1 A 1
    Stop
  Toaster:
    TNT1 A 0
    TNT1 AAA 1 A_SpawnItemEx("ELFiendFlame",random(20,-20),random(20,-20),random(40,80),0,0,random(2,6),0,128,0)
    Stop
  }
}

ACTOR ELFiendFlame
{
+MISSILE
+DONTSPLASH
+CLIENTSIDEONLY
+NOBLOCKMAP
+NOGRAVITY
+NOTELEPORT
+FORCEXYBILLBOARD
+NOTIMEFREEZE
RenderStyle Add
Scale 1.1
Alpha 0.9
States
{
Spawn:
    TNT1 A 0
    EMKE ABCDEFGHIJKL 2 Bright A_FadeOut
    Stop
}
}

ACTOR ELegFiendFlameBreath : MagmaBreath
{ 
Speed 34
Scale 0.65
+NOTIMEFREEZE
+RIPPER
BounceCount 3
States 
  { 
  Spawn: 
    EMKE LKJIHGFEDCB 3 Bright A_Explode(Random(9,14),86)
	EMKE AA 2 Bright A_FadeOut(0.15)
	Stop
  Death:
	EMKE AA 2 Bright A_FadeOut(0.25)
	Stop
	} 
}

ACTOR LegRipperrMouthRedKaboom
{
Renderstyle Add
Alpha 0.8
+NOTELEPORT
+DONTSPLASH
+NOGRAVITY
+FORCEXYBILLBOARD
+NOTIMEFREEZE
+NOCLIP
+NOBLOCKMAP
+NOINTERACTION
+CLIENTSIDEONLY
Scale 0.4
States
{
Spawn:
TNT1 A 0
EXPO ACEGIKLM 1 Bright A_FadeOut(0.1)
Stop
}
}

ACTOR LegRipperrMouthBreatheRedKaboom : LegRipperrMouthBlueKaboom
{
Scale 0.5
Alpha 0.5
States
{
Spawn:
TNT1 A 0
EXPO ABCDEFGHIJKKLLMMM 4 Bright A_FadeOut(0.025)
Stop
}
}