ACTOR RailTargetPuff
{
Decal None
+NOINTERACTION
+BLOODLESSIMPACT
+FORCEDECAL
States
{
Spawn:
	TNT1 A 0
	Stop
   }
}

ACTOR EnragedHellionSmokeSpawner : RedParticleSpawner
{
+NOTIMEFREEZE
States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(304) == 1, "Toaster")
		TNT1 A 0 A_CheckSight("Toaster")
		TNT1 AAA 0 A_SpawnItemEx("EnragedHellionSmoke",random(12,-12),random(12,-12),random(12,64),0,0,random(1,3),0,128,0)
		TNT1 A 1
		Stop
	}
}

ACTOR EnragedHellionSmoke : RHellionSmoke
{
+NOTIMEFREEZE
}

ACTOR EKaboomLN : Kaboom4
{
+NOTIMEFREEZE
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(304) == 1, "Toaster")
EXPO AABBCDEFGHIJKLM 1 Bright A_FadeOut(0.05)
Stop
}
}

ACTOR EKaboomLN2 : Kaboom6
{
+NOTIMEFREEZE
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(304) == 1, "Toaster")
EXPO AABBCDEFGHIJKLM 1 Bright A_FadeOut(0.05)
Stop
}
}

ACTOR ELegendaryDRuneFlame
{
+NOCLIP
+MISSILE
+DONTSPLASH
+CLIENTSIDEONLY
+NOBLOCKMAP
+NOGRAVITY
+NOTELEPORT
+FORCEXYBILLBOARD
+NOTIMEFREEZE
RenderStyle Add
Scale 0.3
States
{
Spawn:
	EMKE ABCDEFGHIJKL 2 Bright A_FadeOut
	Stop
}
}

ACTOR ELegendaryDRuneFlameSpawner 
{
+NOTIMEFREEZE
+CLIENTSIDEONLY
States
{
Spawn:
	TNT1 A 0
	TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(304) == 1, "Toaster")
	TNT1 AAAAAA 0 A_SpawnItemEx("ELegendaryDRuneFlame",random(20,-20),random(20,-20),random(20,40),0,0,random(2,6),0,SXF_CLIENTSIDE|SXF_NOCHECKPOSITION,0)
	TNT1 A 0
	Stop
Toaster:
	TNT1 A 0
	Stop	
}
}

ACTOR RLegendaryRifleShot
{
   Height 3
   Radius 3
   Speed 45
   DamageType "Legendary"
   Damage 65
   Scale 0.5
   RenderStyle Add
   Alpha 0.95
   PROJECTILE
   +THRUSPECIES
   +FORCERADIUSDMG
   +NOTIMEFREEZE
   Species ""
   DeathSound "weapons/demontechex"
   Decal DoomImpScorch
   States
   {
  Spawn:
	TNT1 A 0
	TNT1 A 0 A_Jump(128,"Spawn2")
  Normal:
    ITPR ABCDEF 1 Bright A_SpawnItemEx("ILDemonTechTrail",Random(-1,1),Random(-1,1),Random(-1,1),Random(-1,1),Random(-1,1),Random(-1,1),Random(-20,20),SXF_CLIENTSIDE|SXF_NOCHECKPOSITION,0)
    Loop
  Spawn2:
    ITPR ABCDEF 1 Bright A_SpawnItemEx("ILDemonTechTrail2",Random(-1,1),Random(-1,1),Random(-1,1),Random(-1,1),Random(-1,1),Random(-1,1),Random(-20,20),SXF_CLIENTSIDE|SXF_NOCHECKPOSITION,0)
    Loop	  
  Death:
	TNT1 A 0 Bright A_SpawnItemEx("RedParticleSpawner",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	TNT1 AAA 0 A_CustomMissile("LegendarySmokeFX4",0,0,random(0,360),CMF_AIMDIRECTION,random(0,360))
	TNT1 A 0 Bright A_SpawnItemEx("ILDemonTechEx",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
    TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(304) == 0, "DeathSFX")
	Goto Toaster
  DeathSFX:
	TNT1 A 0 Bright A_SpawnItemEx("RedParticleSpawner",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	TNT1 AAA 0 A_CustomMissile("EKaboomLN",0,0,random(0,360),CMF_AIMDIRECTION,random(0,360))
	TNT1 AAA 0 A_CustomMissile("LegendarySmokeFX4",0,0,random(0,360),CMF_AIMDIRECTION,random(0,360))
	TNT1 A 0 Bright A_SpawnItemEx("ILDemonTechEx",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
  Toaster:
	TNT1 A 1 Bright A_Explode(20,64)
    Stop
	}
}

ACTOR ILDemonTechEx
{
PROJECTILE
Scale 0.45
RenderStyle Add
Alpha 0.75
+NOCLIP
+NOTIMEFREEZE
States
	{
	Spawn:
		TNT1 A 0 Bright
		TNT1 A 0 Bright A_JumpIf(ACS_ExecuteWithResult(304) == 1, "Toaster")
		IRPG ABCDEFGH 2 Bright A_FadeOut(0.1,1)
		Stop
	Toaster:
		IRPG ABCDEFGH 2 Bright
		Stop
	}
}

ACTOR ILDemonTechTrail : BFG9500Trail
{
Scale 0.1
Alpha 0.75
+NOTIMEFREEZE
States
	{
	Spawn:
		TNT1 A 0 Bright
		TNT1 A 0 Bright A_JumpIf(ACS_ExecuteWithResult(304) == 1, "Toaster")
		TNT1 A 2 Bright
		ITRI AAAAAABBBBBBBB 1 Bright A_FadeOut(0.05,1)
		ITRI BBBBB 1 Bright A_FadeOut(0.025,1)
		Stop
	Toaster:
		TNT1 A 1 Bright
		Stop
	}
}

ACTOR ILDemonTechTrail2 : DemonTechTrail
{
+NOTIMEFREEZE
States
	{
	Spawn:
		TNT1 A 0 Bright
		TNT1 A 0 Bright A_JumpIf(ACS_ExecuteWithResult(304) == 1, "Toaster")
		TNT1 A 2 Bright
		ITRI AAAAAACCCCCCCC 1 Bright A_FadeOut(0.05,1)
		ITRI CCCCC 1 Bright A_FadeOut(0.025,1)
		Stop
	Toaster:
		TNT1 A 1 Bright
		Stop
	}
}

ACTOR RLegendaryProjectile : RLegendaryRifleShot
{
   Damage 55
   +THRUSPECIES
   DamageType "Legendary"
   States
   {
  Death:
	TNT1 A 0 Bright A_SpawnItemEx("RedParticleSpawner",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	TNT1 AAA 0 A_CustomMissile("LegendarySmokeFX4",0,0,random(0,360),CMF_AIMDIRECTION,random(0,360))
	TNT1 A 0 Bright A_SpawnItemEx("ILDemonTechEx",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
    TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(304) == 0, "DeathSFX")
	Goto Toaster
  DeathSFX:
	TNT1 A 0 Bright A_SpawnItemEx("RedParticleSpawner",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	TNT1 AAA 0 A_CustomMissile("EKaboomLN",0,0,random(0,360),CMF_AIMDIRECTION,random(0,360))
	TNT1 AAA 0 A_CustomMissile("LegendarySmokeFX4",0,0,random(0,360),CMF_AIMDIRECTION,random(0,360))
	TNT1 A 0 Bright A_SpawnItemEx("ILDemonTechEx",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
   Toaster:
	TNT1 A 1 Bright A_Explode(6,48)
	Stop
   }
}

ACTOR RPlayerLegendaryProjectile : RLegendaryRifleShot
{
   Damage 65
   +THRUSPECIES
   +MTHRUSPECIES
   +NODAMAGETHRUST
   Species "Player"
   DamageType "LegendaryPlayer"
   States
   {
  Death:
	TNT1 A 0 Bright A_SpawnItemEx("RedParticleSpawner",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	TNT1 AAA 0 A_CustomMissile("LegendarySmokeFX4",0,0,random(0,360),CMF_AIMDIRECTION,random(0,360))
	TNT1 A 0 Bright A_SpawnItemEx("ILDemonTechEx",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
    TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(304) == 0, "DeathSFX")
	Goto Toaster
  DeathSFX:
	TNT1 A 0 Bright A_SpawnItemEx("RedParticleSpawner",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
	TNT1 AAA 0 A_CustomMissile("EKaboomLN",0,0,random(0,360),CMF_AIMDIRECTION,random(0,360))
	TNT1 AAA 0 A_CustomMissile("LegendarySmokeFX4",0,0,random(0,360),CMF_AIMDIRECTION,random(0,360))
	TNT1 A 0 Bright A_SpawnItemEx("ILDemonTechEx",0,0,0,0,0,0,0,SXF_CLIENTSIDE,0)
   Toaster:
	TNT1 A 1 Bright A_Explode(6,48)
	Stop
   }
}

ACTOR RedSGTracer : Tracer
{
Speed 100
Scale 0.075
+NOTIMEFREEZE
States
{
Spawn:
    IRAC A 10 Bright
	Stop
	}
}

ACTOR LegendaryRedTracer : FastProjectile
{
Radius 1
Height 1
Speed 100
Scale 0.05
RenderStyle Add
Alpha 0.85
+RANDOMIZE
+FORCEXYBILLBOARD
+NOTIMEFREEZE
States
{
Spawn:
    TRA3 A 1 Bright
	Loop
Death:
	TNT1 A 1 
	Stop
	}
}

ACTOR RedShellCasing : BulletCasing
{
Scale 0.24
Seesound "weapons/casing2"
+NOTIMEFREEZE
States
{
    Spawn:
	  TNT1 A 0
      TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(304) == 1, "Toaster")
	  RLUC ABCDEFGH 2
	  Loop
    Death:
	  TNT1 A 0
      TNT1 A 0 A_Jump(128,3)
      RLUC C 100
      RLUC C 5 A_FadeOut(0.10)
      Goto Death+3
      RLUC G 100
	  RLUC G 5 A_FadeOut(0.10)
	  Goto Death+5
	  }
}

ACTOR EnragedLegendaryEmptyDrumSpawner : CasingSpawner
{
+NOTIMEFREEZE
States
{
Spawn:
    TNT1 A 0
    TNT1 A 1 A_SpawnItemEx("EnragedLegendaryEmptyDrum", 2, 0, -12, 1, 0, 0, Random(-100, -110), 128)
    Stop
    }
}

ACTOR ELegRifleCasing : BulletCasing 
{
	Scale 0.18
	Seesound "weapons/casing1"
	+NOTIMEFREEZE
	States 
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(304) == 1, "Toaster")
		CA10 GHABCDEF 2
		Loop
    Death:
		TNT1 A 0
		TNT1 A 0 A_Jump(128,3)
		CA10 A 100
		CA10 A 5 A_FadeOut(0.10)
		Goto Death+3
		CA10 E 100
		CA10 E 5 A_FadeOut(0.10)
		Goto Death+5
	}
}

ACTOR EnragedModdedBulletPuff : LegendaryASGBulletPuff { }

ACTOR ELLMGPuff : ModdedBulletPuff {
DamageType "Legendary"
Decal "ELegBulletChip"
+NOTIMEFREEZE
+NOINTERACTION
+DONTSPLASH
}

ACTOR EnragedBFG9500 : LegCyberBFG9500Ball 
{
Speed 35
Damage 150
Species ""
Obituary ""
Decal BFG9500LightningRed
DamageType ""
States
{
Spawn:
    EFS3 AAABBB 1 Bright A_SpawnItemEx("EBFGParticle",Random(-12,12),Random(-12,12),Random(-12,12),Random(-2,2),Random(-2,2),Random(-2,2),Random(-20,20),128)
    Loop
Death:
	TNT1 A 0
	TNT1 A 0 A_SpawnItemEx("BFGShockwaveRed2", 0, 0, 0, 0, 0, 0, 0, 128)
    TNT1 AAAAAA 0 A_CustomMissile("Kaboom18", 0, 0, random(0,360), 2, random(0,360))
    EFE1 AB 8 Bright A_SpawnItemEx("RedParticleSpawner", 0, 0, 0, 0, 0, 0, 0, 128)
    EFE1 C 8 Bright A_BFGSpray("CustomSprayRed")
    EFE1 DEF 8 Bright
    Stop    
    }
}

ACTOR EBFGParticle: BFGTrailParticleGreen
{
+NOGRAVITY
Scale 0.08
States
{
Spawn:
TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(304) == 1, "Toaster")
SPKR A 2 Bright A_FadeOut(0.08)
Loop
}
}

ACTOR CustomSprayERed : CustomSpray
{
States
{
Spawn:
   TNT1 A 0
   ERE2 A 6 Bright A_SpawnItemEx("RedParticleSpawner", 0, 0, 0, 0, 0, 0, 0, 128)
   ERE2 BCD 6 Bright 
   Stop
   }
}

Actor EnragedLightningSpark : LegCardiThunderSpark
{
States
{
   Spawn:
	TNT1 A 0
    TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(304) == 1, "Toaster")
	TNT1 A 0 A_Jump(80,4)
    SRPK ABC 2 Bright
	Loop
	SRPK DEF 4 Bright A_FadeOut(0.25)
	Stop
   Death:
	SRPK DEF 4 Bright A_FadeOut(0.25)
	Stop	
	}
}

ACTOR ELegBFGGlowY : GuruEffectInheritance
{
	Alpha 0.5
	+CLIENTSIDEONLY
	Scale 0.2
	States
	{
	Spawn:
      TNT1 A 0
      TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(304) == 1, "Toaster")
	Fade:
	  EBUM A 0 A_SetScale(ScaleX +0.025, ScaleY +0.1)
	  EBUM A 1 Bright A_FadeOut(0.01)
	  Loop
    Toaster:
      TNT1 A 0
      Stop
	}
}

ACTOR ELegBFGGlowX : GuruEffectInheritance
{
	Alpha 0.5
	+CLIENTSIDEONLY
	Scale 0.2
	States
	{
	Spawn:
      TNT1 A 0
      TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(304) == 1, "Toaster")
	Fade:
	  EBUM A 0 A_SetScale(ScaleX +0.1, ScaleY +0.025)
	  EBUM A 1 Bright A_FadeOut(0.01)
	  Loop
    Toaster:
      TNT1 A 0
      Stop
	}
}

ACTOR ELegBFGSphereSmoke : GuruSmokeInheritance
{
	Scale 1.8
	Alpha 0.45
	PROJECTILE
	DamageType "Legendary"
	States
	{
	Spawn:
	TNT1 A 0
	TNT1 A 1 A_Jump(255,"Spawn1","Spawn2","Spawn3")
	Stop
	Spawn1:
	 TNT1 A 0 A_SetScale(ScaleX -0.002, ScaleY -0.002)
	 TNT1 A 0 A_JumpIf(Alpha<0.3,2)
	 EHD1 A 0 A_Explode(10,164)
	 EHD1 A 4 Bright A_FadeOut(0.0065)
	 Loop
	Spawn2:
	 TNT1 A 0 A_SetScale(ScaleX -0.002, ScaleY -0.002)
	 TNT1 A 0 A_JumpIf(Alpha<0.3,2)
	 EHD1 A 0 A_Explode(10,164)
	 EHD2 A 4 Bright A_FadeOut(0.0065)
	 Loop
	Spawn3:
	 TNT1 A 0 A_SetScale(ScaleX -0.002, ScaleY -0.002)
	 TNT1 A 0 A_JumpIf(Alpha<0.3,2)
	 EHD1 A 0 A_Explode(10,164)
	 EHD3 A 4 Bright A_FadeOut(0.0065)
	 Loop
	}
}

ACTOR ELegBFGSpark : GuruTrailSpark
{
	Scale 1.15
	+CLIENTSIDEONLY
	States
	{
	Spawn:
      TNT1 A 0
      TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(304) == 1, "Toaster")
      EELE ABCDEF 2 Bright A_FadeOut(0.1)
      Stop
    Toaster:
      TNT1 A 0
      Stop
	}
}