



//========================================================================================
//Particle Actors. Don't just rip-off, or else I melt your face. -Keksdose
//========================================================================================

Actor GlobalBase
{
 +Missile
 +NoGravity
 +NoBlockmap
 -Solid
 Radius 0
 Height 0
 RenderStyle Add
 Alpha 1.0
 States
 {
  Spawn:
   TNT1 A 0
   Stop
 }
}

Actor RedFire_BG : GlobalBase
{
 Scale 1.0
 Speed 2
 States
 {
  Spawn:
   TNT1 A 0
   TNT1 A 0 ThrustThingZ(0, Random(6, 10), 0, 0)
   FRED AAABBBCCDDEEEEEEEEEEEEEEEEEEEEEEEEEEEE 1 Bright A_FadeOut(0.05)
   Stop
 }
}

Actor RedFire_DG : GlobalBase
{
 Scale 1.39
 Speed 2
 States
 {
  Spawn:
   TNT1 A 0
   TNT1 A 0 ThrustThingZ(0, Random(8, 14), 0, 0)
   FRE2 AAABBBCCDDEEEEEEEEEEEEEEEEEEEEEEEEEEEE 1 Bright A_FadeOut(0.05)
   Stop
 }
}

Actor GreenFire_BG : GlobalBase
{
 Scale 1.0
 Speed 2
 States
 {
  Spawn:
   TNT1 A 0
   TNT1 A 0 ThrustThingZ(0, Random(6, 10), 0, 0)
   FGRE AAABBBCCDDEEEEEEEEEEEEEEEEEEEEEEEEEEEE 1 Bright A_FadeOut(0.05)
   Stop
 }
}

Actor BlueFire_BG : GlobalBase
{
 Scale 1.0
 Speed 2
 States
 {
  Spawn:
   TNT1 A 0
   TNT1 A 0 ThrustThingZ(0, Random(6, 10), 0, 0)
   FBLU AAABBBCCDDEEEEEEEEEEEEEEEEEEEEEEEEEEEE 1 Bright A_FadeOut(0.05)
   Stop
 }
}

//=====================================================================================

Actor Keksdose_RedTorch : RedTorch Replaces RedTorch
{
 States
 {
  Spawn:
   TNT1 A 0
   TNT1 A 0 A_SpawnItemEx("RandomRedFlare", 0, 0, 59, 0, 0, 0, 0, 0)
   TRCH A 1 A_SpawnItemEx("RedFire_BG", Random(-2, 2), Random(-2, 2), Random(58, 60), 0, 0, 0, 0)
   Goto Spawn+2
 }
}

Actor Keksdose_BlueTorch : BlueTorch Replaces BlueTorch
{
 States
 {
  Spawn:
   TNT1 A 0
   TNT1 A 0 A_SpawnItemEx("RandomBlueFlare", 0, 0, 59, 0, 0, 0, 0, 0)
   TRCH A 1 A_SpawnItemEx("BlueFire_BG", Random(-2, 2), Random(-2, 2), Random(58, 60), 0, 0, 0, 0)
   Goto Spawn+2
 }
}

Actor Keksdose_GreenTorch : GreenTorch Replaces GreenTorch
{
 States
 {
  Spawn:
   TNT1 A 0
   TNT1 A 0 A_SpawnItemEx("RandomGreenFlare", 0, 0, 59, 0, 0, 0, 0, 0)
   TRCH A 1 A_SpawnItemEx("GreenFire_BG", Random(-2, 2), Random(-2, 2), Random(58, 60), 0, 0, 0, 0)
   Goto Spawn+2
 }
}

Actor Keksdose_ShortRedTorch : ShortRedTorch Replaces ShortRedTorch
{
 States
 {
  Spawn:
   TNT1 A 0
   TNT1 A 0 A_SpawnItemEx("RandomRedFlare", 0, 0, 33, 0, 0, 0, 0, 0)
   STCB A 1 A_SpawnItemEx("RedFire_BG", Random(-2, 2), Random(-2, 2), Random(32, 34), 0, 0, 0, 0)
   Goto Spawn+2
 }
}

Actor Keksdose_ShortBlueTorch : ShortBlueTorch Replaces ShortBlueTorch
{
 States
 {
  Spawn:
   TNT1 A 0
   TNT1 A 0 A_SpawnItemEx("RandomBlueFlare", 0, 0, 33, 0, 0, 0, 0, 0)
   STCB A 1 A_SpawnItemEx("BlueFire_BG", Random(-2, 2), Random(-2, 2), Random(32, 34), 0, 0, 0, 0)
   Goto Spawn+2
 }
}

Actor Keksdose_ShortGreenTorch : ShortGreenTorch Replaces ShortGreenTorch
{
 Game Doom
 Radius 16
 Height 37
 +SOLID
 States
 {
  Spawn:
   TNT1 A 0
   TNT1 A 0 A_SpawnItemEx("RandomGreenFlare", 0, 0, 33, 0, 0, 0, 0, 0)
   STCB A 1 A_SpawnItemEx("GreenFire_BG", Random(-2, 2), Random(-2, 2), Random(32, 34), 0, 0, 0, 0)
   Goto Spawn+2
 }
}

Actor Keksdose_Barrel : BurningBarrel Replaces BurningBarrel
{
 States
 {
  Spawn:
   TNT1 A 0
   TNT1 A 0 A_SpawnItemEx("RandomYellowFlare", 0, 0, 29, 0, 0, 0, 0, 0)
   FCAN A 1 A_SpawnItemEx("RedFire_DG", Random(-2, 2), Random(-2, 2), Random(32, 34), 0, 0, 0, 0)
   Goto Spawn+2
 }
}

//=================================================
ACTOR BaseLensflare
{
   Game Doom
    Health       -1
    Radius        0
    Height        0
    Renderstyle ADD
    Alpha       0.8
      +GHOST
      +NOCLIP
      +NOGRAVITY
      +ISMONSTER
      - SHOOTABLE
      - COUNTKILL
	+MOVEWITHSECTOR
	+RELATIVETOFLOOR
   States
   {
   Spawn:
      TNT1 A -1  BRIGHT  
      Stop
   }
}

ACTOR BlueFlare : BaseLensflare
{
    Scale       0.4
   States
   {
   Spawn:
	TNT1 A 0
      FLAR C -1  BRIGHT  
      Stop
   }
}

ACTOR AltBlueFlare : BaseLensflare
{
    Scale       0.4
   States
   {
   Spawn:
	TNT1 A 0
      FL2R C -1  BRIGHT  
      Stop
   }
}

ACTOR YellowFlare : BaseLensflare
{
    Scale  0.35
   States
   {
   Spawn:
      FLAR B -1  BRIGHT  
      Stop
   }
}

ACTOR AltYellowFlare : BaseLensflare
{
    Scale  0.35
   States
   {
   Spawn:
	TNT1 A 0
      FL2R B -1  BRIGHT  
      Stop
   }
}

ACTOR RedFlare : BaseLensflare
{
    Scale       0.4
   States
   {
   Spawn:
	TNT1 A 0
      FLAR A -1  BRIGHT  
      Stop
   }
}

ACTOR AltRedFlare : BaseLensflare
{
    Scale       0.4
   States
   {
   Spawn:
	TNT1 A 0
      FL2R A -1  BRIGHT  
      Stop
   }
}

ACTOR FloatingFlare : RedFlare
{
   Game Doom
    Speed   3
    VSpeed  2
      +MISSILE
   States
   {
   Spawn:
	TNT1 A 0
	TNT1 A 0 A_Jump(128,1,2)
      Goto Spawn+1
      FLAR A 10  BRIGHT  A_FadeOut
      Goto Spawn+2
      FL2R A 10  BRIGHT  A_FadeOut
      Goto Spawn+3
   } 
}

ACTOR FloatingFlareSpawner
{
   Game Doom
    Radius  1
    Height  1
   States
   {
   Spawn:
      TNT1 AAAAAA 2 A_SpawnItemEx("FloatingFlare",random(-64,64),random(-64,64),0,0,0,2)
      Loop
   }
}

ACTOR GreenFlare : BaseLensflare
{
    Scale       0.4
   States
   {
   Spawn:
	TNT1 A 0
      FLAR D -1  BRIGHT  
      Stop
   }
}

ACTOR AltGreenFlare : BaseLensflare
{
    Scale       0.4
   States
   {
   Spawn:
	TNT1 A 0
      FL2R D -1  BRIGHT  
      Stop
   }
}

//dododee

//====================================================================================

Actor RandomGreenFlare : BaseLensFlare
{
 States
 {
  Spawn:
   TNT1 A 0
   TNT1 A 0 A_Jump(128, 2)
   TNT1 A 0 A_SpawnItem("GreenFlare", 0, 0, 0)
   Stop
   TNT1 A 0 A_SpawnItem("AltGreenFlare", 0, 0, 0)
   Stop
 }
}

Actor RandomRedFlare : BaseLensFlare
{
 States
 {
  Spawn:
   TNT1 A 0
   TNT1 A 0 A_Jump(128, 2)
   TNT1 A 0 A_SpawnItem("RedFlare", 0, 0, 0)
   Stop
   TNT1 A 0 A_SpawnItem("AltRedFlare", 0, 0, 0)
   Stop
 }
}

Actor RandomYellowFlare : BaseLensFlare
{
 States
 {
  Spawn:
   TNT1 A 0
   TNT1 A 0 A_Jump(128, 2)
   TNT1 A 0 A_SpawnItem("YellowFlare", 0, 0, 0)
   Stop
   TNT1 A 0 A_SpawnItem("AltYellowFlare", 0, 0, 0)
   Stop
 }
}

Actor RandomBlueFlare : BaseLensFlare
{
 States
 {
  Spawn:
   TNT1 A 0
   TNT1 A 0 A_Jump(128, 2)
   TNT1 A 0 A_SpawnItem("BlueFlare", 0, 0, 0)
   Stop
   TNT1 A 0 A_SpawnItem("AltBlueFlare", 0, 0, 0)
   Stop
 }
}