///////////////////////////////////////
// Dynamic Lights for Vanilla Actors //
///////////////////////////////////////

//////////
// DOOM //
//////////

// Zombies
object ZombieMan2
{
	frame POSSF { light ZOMBIEATK }
	frame 12DGB { light ZOMBIEATK }
	frame 12DGD { light ZOMBIEATK }
}

object ShotgunGuy2
{
	frame SPOSF { light ZOMBIEATK }
}

object ChaingunGuy2
{
	frame CPOSE { light ZOMBIEATK }
	frame CPOSF { light ZOMBIEATK }
}

object DoomguyPlayer
{
	frame DGUYF { light ZOMBIEATK }
}

// Doom Imp Fireball
object DoomImpBall2
{
	frame BAL1A { light IMPBALL    }
	frame BAL1B { light IMPBALL    }

	frame BAL1C { light IMPBALL_X1 }
	frame BAL1D { light IMPBALL_X2 }
	frame BAL1E { light IMPBALL_X3 }
}

// Cacodemon fireball
object CacodemonBall2
{
	frame BAL2A { light CACOBALL }
	frame BAL2B { light CACOBALL }

	frame BAL2C { light CACOBALL_X1 }
	frame BAL2D { light CACOBALL_X2 }
	frame BAL2E { light CACOBALL_X3 }
}

// Baron / Hell Knight fireball
object BaronBall2
{
	frame BAL7A { light BARONBALL    }
	frame BAL7B { light BARONBALL    }

	frame BAL7C { light BARONBALL_X1 }
	frame BAL7D { light BARONBALL_X2 }
	frame BAL7E { light BARONBALL_X3 }
}

object BaronBall3
{
	frame BAL7A { light BARONBALL    }
	frame BAL7B { light BARONBALL    }

	frame BAL7C { light BARONBALL_X1 }
	frame BAL7D { light BARONBALL_X2 }
	frame BAL7E { light BARONBALL_X3 }
}

// Lost Soul
object LostSoul2
{
	frame SKULA { light LOSTSOUL    }
	frame SKULB { light LOSTSOUL    }
	frame SKULC { light LOSTSOUL    }
	frame SKULD { light LOSTSOUL    }
	frame SKULE { light LOSTSOUL    }
	frame SKULF { light LOSTSOUL    }
	frame SKULG { light LOSTSOUL    }
	
	frame SKULH { light LOSTSOUL_X1 }
	frame SKULI { light LOSTSOUL_X2 }
	frame SKULJ { light LOSTSOUL_X3 }
	frame SKULK { light LOSTSOUL_X4 }
}

// Mancubus Fireball
object FatShot2
{
	frame MANFA { light IMPBALL   }
	frame MANFB { light IMPBALL   }

	frame MISLB { light ROCKET_X1 }
	frame MISLC { light ROCKET_X2 }
	frame MISLD { light ROCKET_X3 }
}

// Arachnotron Fireball
object ArachnotronPlasma2
{
	frame APLSA { light ARACHPLAS }
	frame APLSB { light ARACHPLAS }

	frame APBXA { light ARACHPLAS_X1 }
	frame APBXB { light ARACHPLAS_X2 }
	frame APBXC { light ARACHPLAS_X2 }
	frame APBXD { light ARACHPLAS_X3 }
	frame APBXE { light ARACHPLAS_X4 }
}

// Revenant tracer
object RevenantTracerDumbfire
{
	frame FATBA { light TRACER    }
	frame FATBB { light TRACER    }

	frame FBXPA { light TRACER_X1 }
	frame FBXPB { light TRACER_X2 }
	frame FBXPC { light TRACER_X3 }
}

object RevenantTracerHoming
{
	frame FATBA { light TRACER    }
	frame FATBB { light TRACER    }

	frame FBXPA { light TRACER_X1 }
	frame FBXPB { light TRACER_X2 }
	frame FBXPC { light TRACER_X3 }
}

// Arch-vile
object Archvile2
{
	frame VILEH { light ARCHATK1 }
	frame VILEI { light ARCHATK2 }
	frame VILEJ { light ARCHATK3 }
	frame VILEK { light ARCHATK4 }
	frame VILEL { light ARCHATK4 }
	frame VILEM { light ARCHATK4 }
	frame VILEN { light ARCHATK5 }
	frame VILEO { light ARCHATK6 }
	frame VILEP { light ARCHATK7 }

	frame VILE[ { light ARCHRES }
	frame VILE\ { light ARCHRES }
	frame VILE] { light ARCHRES }
}

// Cyber Rocket
object CyberRocket
{
	frame MISLA { light ROCKET    }

	frame MISLB { light ROCKET_X1 }
	frame MISLC { light ROCKET_X2 }
	frame MISLD { light ROCKET_X3 }
}

/////////////
// HERETIC //
/////////////

// Heretic imp fireball
object HereticImpBall2
{
	frame FX10A { light HIMPBALL }
	frame FX10B { light HIMPBALL }
	frame FX10C { light HIMPBALL }

	frame FX10D { light HIMPBALL    }
	frame FX10E { light HIMPBALL_X1 }
	frame FX10F { light HIMPBALL_X2 }
	frame FX10G { light HIMPBALL_X3 }
}

// Mummy
object MummyLeader2
{
	frame MUMMY { light MUMMYATK }
}

object MummyLeaderGhost2
{
	frame MUMMY { light MUMMYATK }
}

// Mummy fireball
object MummyFX2
{
	frame FX15A { light MUMMYBALL }
	frame FX15B { light MUMMYBALL }
	frame FX15C { light MUMMYBALL }

	frame FX15D { light MUMMYBALL_X1 }
	frame FX15E { light MUMMYBALL_X2 }
	frame FX15F { light MUMMYBALL_X3 }
}

// Green flying axe
object KnightAxe2
{
	frame SPAXA { light GREENAXE }
	frame SPAXB { light GREENAXE }
	frame SPAXC { light GREENAXE }

	frame SPAXD { light GREENAXE_X1 }
	frame SPAXE { light GREENAXE_X2 }
	frame SPAXF { light GREENAXE_X3 }
}

// Red flying axe
object RedAxe2
{
	frame RAXEA { light REDAXE }
	frame RAXEB { light REDAXE }

	frame RAXEC { light REDAXE_X1 }
	frame RAXED { light REDAXE_X2 }
	frame RAXEE { light REDAXE_X3 }
}

// Disciple fireball
object WizardFX2
{
	frame FX11A { light DISCIPLEBALL }
	frame FX11B { light DISCIPLEBALL }
	frame FX11C { light DISCIPLEBALL }

	frame FX11D { light DISCIPLEBALL    }
	frame FX11E { light DISCIPLEBALL    }
	frame FX11F { light DISCIPLEBALL_X1 }
	frame FX11G { light DISCIPLEBALL_X2 }
}

// Clinker death explosion
object Clink2
{
	frame CLNKK { light CLINK_X1 }
	frame CLNKL { light CLINK_X2 }
	frame CLNKM { light CLINK_X3 }
	frame CLNKN { light CLINK_X4 }
}

// Weredragon
object Beast2
{
	frame BEASI { light BEASTATK }
}

// Weredragon fireball
object BeastBall2
{
	frame FRB1A { light BEASTBALL }
	frame FRB1B { light BEASTBALL }
	frame FRB1C { light BEASTBALL }

	frame FRB1D { light BEASTBALL_X1 }
	frame FRB1E { light BEASTBALL_X2 }
	frame FRB1F { light BEASTBALL_X3 }
	frame FRB1G { light BEASTBALL_X4 }
}

// Small ophidian shot
object SnakeProjA2
{
	frame SNFXA { light SNAKESHOT1 }
	frame SNFXB { light SNAKESHOT1 }
	frame SNFXC { light SNAKESHOT1 }
	frame SNFXD { light SNAKESHOT1 }

	frame SNFXE { light SNAKESHOT1_X1 }
	frame SNFXF { light SNAKESHOT1_X2 }
	frame SNFXG { light SNAKESHOT1_X3 }
	frame SNFXH { light SNAKESHOT1_X4 }
}

// Large ophidian shot
object SnakeProjB2
{
	frame SNFXJ { light SNAKESHOT2 }
	frame SNFXK { light SNAKESHOT2 }

	frame SNFXL { light SNAKESHOT2_X1 }
	frame SNFXM { light SNAKESHOT2_X2 }
	frame SNFXN { light SNAKESHOT2_X3 }
}

// Iron lich death explosion
object Ironlich2
{
	frame LICHD { light IRONLICH1 }
	frame LICHE { light IRONLICH2 }
	frame LICHF { light IRONLICH3 }
	frame LICHG { light IRONLICH4 }
}

// IronLich frost ball
object HeadFX12
{
	frame FX05A { light FROSTBALL }
	frame FX05B { light FROSTBALL }
	frame FX05C { light FROSTBALL }

	frame FX05D { light FROSTBALL_X1 }
	frame FX05E { light FROSTBALL_X2 }
	frame FX05F { light FROSTBALL_X3 }
	frame FX05G { light FROSTBALL_X4 }
}

// Frost shard (spawned by frost ball)
object HeadFX22
{
	frame FX05H { light FROSTSHARD }
	frame FX05I { light FROSTSHARD }
	frame FX05J { light FROSTSHARD }
}

// Ironlich fire wall
object HeadFX32
{
	frame FX06A { light LICHFIRE }
	frame FX06B { light LICHFIRE }
	frame FX06C { light LICHFIRE }

	frame FX06D { light LICHFIRE_X1 }
	frame FX06E { light LICHFIRE_X2 }
	frame FX06F { light LICHFIRE_X3 }
	frame FX06G { light LICHFIRE_X4 }
}

// D'Sparil blue bolt
object Sorcerer2FX3
{
	frame FX16A { light DSPARILBALL }
	frame FX16B { light DSPARILBALL }
	frame FX16C { light DSPARILBALL }

	frame FX16G { light DSPARILBALL_X1 }
	frame FX16H { light DSPARILBALL_X2 }
	frame FX16I { light DSPARILBALL_X3 }
	frame FX16J { light DSPARILBALL_X4 }
	frame FX16K { light DSPARILBALL_X5 }
	frame FX16L { light DSPARILBALL_X5 }
}

// D'Sparil
object Sorcerer4
{
	frame SOR2R { light DSPARILATK }
	frame SOR2S { light DSPARILATK }
	frame SOR2T { light DSPARILATK }
}

///////////
// HEXEN //
///////////

// Fire gargoyle
object FireDemon2
{
	frame FDMNA { light FGARG }
	frame FDMNB { light FGARG }
	frame FDMNC { light FGARG }
	frame FDMND { light FGARG }
	frame FDMNH { light FGARG }
	frame FDMNI { light FGARG }
	frame FDMNJ { light FGARG }

	frame FDMNK { light FGARGATK }
}

// Green Chaos Serpent fireball
object Demon1FX2
{
	frame DMFXA { light SERPENTBALL }
	frame DMFXB { light SERPENTBALL }
	frame DMFXC { light SERPENTBALL }

	frame DMFXD { light SERPENTBALL_X1 }
	frame DMFXE { light SERPENTBALL_X2 }
	frame DMFXF { light SERPENTBALL_X3 }
	frame DMFXG { light SERPENTBALL_X4 }
	frame DMFXH { light SERPENTBALL_X4 }
}

// Brown Chaos Serpent gasball
object Demon2FX2
{
	frame D2FXA { light CSGASBALL }
	frame D2FXB { light CSGASBALL }
	frame D2FXC { light CSGASBALL }
	frame D2FXD { light CSGASBALL }
	frame D2FXE { light CSGASBALL }
	frame D2FXF { light CSGASBALL }

	frame D2FXG { light CSGASBALL_X1 }
	frame D2FXH { light CSGASBALL_X2 }
	frame D2FXI { light CSGASBALL_X2 }
	frame D2FXJ { light CSGASBALL_X3 }
	frame D2FXK { light CSGASBALL_X4 }
	frame D2FXL { light CSGASBALL_X4 }
}

// Centaur fireball
object CentaurFX2
{
	frame CTFXA { light TAURBALL }

	frame CTFXB { light TAURBALL_X1 }
	frame CTFXC { light TAURBALL_X2 }
	frame CTFXD { light TAURBALL_X3 }
	frame CTFXE { light TAURBALL_X4 }
	frame CTFXF { light TAURBALL_X4 }
}

// Wendigo
object IceGuy2
{
	frame ICEYG { light ICEGUYATK }
}

// Stalker slimeball
object SerpentFX2
{
	frame SSFXA { light STALKERSLIME }
	frame SSFXB { light STALKERSLIME }

	frame SSFXC { light STALKERSLIME_X1 }
	frame SSFXD { light STALKERSLIME_X2 }
	frame SSFXE { light STALKERSLIME_X3 }
	frame SSFXF { light STALKERSLIME_X3 }
	frame SSFXG { light STALKERSLIME_X4 }
	frame SSFXH { light STALKERSLIME_X4 }
}

// Bishop fireball
object BishopFX2
{
	frame BPFXA { light BISHOPBALL }
	frame BPFXB { light BISHOPBALL }

	frame BPFXC { light BISHOPBALL_X1 }
	frame BPFXD { light BISHOPBALL_X2 }
	frame BPFXE { light BISHOPBALL_X2 }
	frame BPFXF { light BISHOPBALL_X3 }
	frame BPFXG { light BISHOPBALL_X3 }
	frame BPFXH { light BISHOPBALL_X4 }
}

// Reaver fireball
object WraithFX6
{
	frame WRBLA { light REAVERBALL }
	frame WRBLB { light REAVERBALL }
	frame WRBLC { light REAVERBALL }

	frame WRBLD { light REAVERBALL_X1 }
	frame WRBLE { light REAVERBALL_X2 }
	frame WRBLF { light REAVERBALL_X3 }
}

// Zedek
object FSwordMissile2
{
	frame FSFXA { light SWORDSHOT }
	frame FSFXB { light SWORDSHOT }
	frame FSFXC { light SWORDSHOT }

	frame FSFXD { light SWORDSHOT_X1 }
	frame FSFXE { light SWORDSHOT_X2 }
	frame FSFXF { light SWORDSHOT_X2 }
	frame FSFXG { light SWORDSHOT_X2 }
	frame FSFXH { light SWORDSHOT_X3 }
	frame FSFXI { light SWORDSHOT_X3 }
	frame FSFXJ { light SWORDSHOT_X4 }
	frame FSFXK { light SWORDSHOT_X5 }
	frame FSFXL { light SWORDSHOT_X5 }
}

// Menelkir
object MageStaffFX22
{
	frame MSP2A { light BSBALL }
	frame MSP2B { light BSBALL }
	frame MSP2C { light BSBALL }
	frame MSP2D { light BSBALL }

	frame MSP2E { light BSBALL_X1 }
	frame MSP2F { light BSBALL_X2 }
	frame MSP2G { light BSBALL_X3 }
	frame MSP2H { light BSBALL_X4 }
}

// Heresiarch
object SorcFX12
{
	frame SBS1 { light HARCHHEAD }
}

object SorcFX42
{
	frame SBS4A { light HARCHPURCUBE }
	frame SBS4B { light HARCHPURCUBE }

	frame SBS4C { light HARCHBALL_X1 }
	frame SBS4D { light HARCHBALL_X2 }
	frame SBS4E { light HARCHBALL_X3 }
}

object Heresiarch2
{
	frame SORCE { light HARCHATK }
	frame SORCF { light HARCHATK }
}

// Korax
object Korax2
{
	frame KORXF { light HARCHATK }
	frame KORXG { light HARCHATK }
}

////////////
// STRIFE //
////////////

// Acolytes
object Acolyte2
{
	frame AGRDF { light HUMNDATK }
}

object AcolyteTan2
{
	frame AGRDF { light HUMNDATK }
}

object AcolyteRed2
{
	frame AGRDF { light HUMNDATK }
}

object AcolyteRust2
{
	frame AGRDF { light HUMNDATK }
}

object AcolyteGray2
{
	frame AGRDF { light HUMNDATK }
}

object AcolyteDGreen2
{
	frame AGRDF { light HUMNDATK }
}

object AcolyteGold2
{
	frame AGRDF { light HUMNDATK }
}

object AcolyteLGreen2
{
	frame AGRDF { light HUMNDATK }
}

object AcolyteBlue2
{
	frame AGRDF { light HUMNDATK }
}

object AcolyteShadow2
{
	frame AGRDF { light HUMNDATK }
}

// Rebels
object RebelB
{
	frame HMN1F { light HUMNDATK }
}

object Rebel1B
{
	frame HMN1F { light HUMNDATK }
}

object Rebel2B
{
	frame HMN1F { light HUMNDATK }
}

object Rebel3B
{
	frame HMN1F { light HUMNDATK }
}

object Rebel4B
{
	frame HMN1F { light HUMNDATK }
}

object Rebel5B
{
	frame HMN1F { light HUMNDATK }
}

object Rebel6B
{
	frame HMN1F { light HUMNDATK }
}

// Macil
object Macil2B
{
	frame LEADF { light HUMNDATK }
}

// Ceiling Turret
object CeilingTurret2
{
	frame TURTB { light CTURRETATK1 }
	frame TURTD { light CTURRETATK2 }

	frame BALLA { light CTURRETDTH1 }
	frame BALLB { light CTURRETDTH2 }
	frame BALLC { light CTURRETDTH3 }
	frame BALLD { light CTURRETDTH4 }
	frame BALLE { light CTURRETDTH5 }
}

// Stalker
object Stalker2
{
	frame STLKM { light STLKATK  }

	frame STLKQ { light STLKDTH1 }
	frame STLKR { light STLKDTH1 }
	frame STLKS { light STLKDTH1 }
	frame STLKT { light STLKDTH2 }
	frame STLKU { light STLKDTH3 }
	frame STLKV { light STLKDTH4 }
	frame STLKW { light STLKDTH5 }
	frame STLKX { light STLKDTH6 }
	frame STLKY { light STLKDTH7 }
	frame STLKZ { light STLKDTH8 }
	frame STLK[ { light STLKDTH9 }
}

// Sentinel
object Sentinel2
{
	frame SEWRG { light SNTNLDTH1 }
	frame SEWRH { light SNTNLDTH2 }
}

object SentinelFX3
{
	frame SHT1A { light SNTNL_FX1 }
	frame SHT1B { light SNTNL_FX2 }

	frame POW1F { light SNTNL_FX3 }
	frame POW1G { light SNTNL_FX4 }
	frame POW1H { light SNTNL_FX5 }
	frame POW1I { light SNTNL_FX6 }
	frame POW1J { light SNTNL_FX7 }
}

// Reaver
object Reaver2
{
	frame ROB1F { light HUMNDATK }

	frame ROB1K { light REAV_X1  }
	frame ROB1L { light REAV_X2  }
	frame ROB1M { light REAV_X3  }
	frame ROB1N { light REAV_X4  }
	frame ROB1O { light REAV_X5  }
	frame ROB1P { light REAV_X6  }
	frame ROB1Q { light REAV_X7  }
}

// Crusader
object Crusader2
{
	frame ROB2H { light CRSDRDTH1 }
	frame ROB2I { light CRSDRDTH2 }
	frame ROB2J { light CRSDRDTH3 }
	frame ROB2K { light CRSDRDTH4 }
	frame ROB2L { light CRSDRDTH5 }
	frame ROB2M { light CRSDRDTH4 }
	frame ROB2N { light CRSDRDTH3 }
	frame ROB2O { light CRSDRDTH2 }
}

// Templar
object Templar2
{
	frame PGRDG { light TEMPATK }

	frame PGRDI { light TEMP_X1 }
	frame PGRDJ { light TEMP_X2 }
	frame PGRDK { light TEMP_X3 }
	frame PGRDL { light TEMP_X4 }
	frame PGRDM { light TEMP_X5 }
	frame PGRDN { light TEMP_X6 }
}

// Inquisitor
object Inquisitor2
{
	frame ROB3F { light INQATK1  }
	frame ROB3J { light INQATK2  }

	frame ROB3H { light INQFLY1  }
	frame ROB3I { light INQFLY2  }

	frame ROB3M { light INQDTH1  }
	frame ROB3N { light INQDTH2  }
	frame ROB3O { light INQDTH3  }
	frame ROB3P { light INQDTH4  }
	frame ROB3Q { light INQDTH5  }
	frame ROB3R { light INQDTH6  }
	frame ROB3S { light INQDTH6  }
	frame ROB3T { light INQDTH6  }
	frame ROB3U { light INQDTH7  }
	frame ROB3V { light INQDTH8  }
	frame ROB3W { light INQDTH6  }
	frame ROB3X { light INQDTH6  }
	frame ROB3Y { light INQDTH9  }
	frame ROB3Z { light INQDTH10 }
	frame ROB3[ { light INQDTH11 }
	frame ROB3\ { light INQDTH12 }
	frame RBB3] { light INQDTH13 }
	frame RBB3A { light INQDTH12 }
	frame RBB3B { light INQDTH13 }
	frame RBB3C { light INQDTH14 }
}

// Programmer
object Programmer2
{
	frame PRGRH { light PROGATK1 }
	frame PRGRI { light PROGATK2 }
	frame PRGRJ { light PROGATK3 }

	frame PRGRN { light PROGDTH1 }
	frame PRGRO { light PROGDTH2 }
}

// Bishop
object StrifeBishop2
{
	frame MLDRE { light BISHOP }
}

//////////////
// SKULLTAG //
//////////////

// Dark Imp Fireball
pointlight DARKIMPBALL
{
	color 0.1 0.1 1.0
	size 64
}

// Dark imp fireball explosion
flickerlight DARKIMPBALL_X1
{
	color 0.07 0.07 0.7
	size 80
	secondarySize 88
	chance 0.25
}

flickerlight DARKIMPBALL_X2
{
	color 0.0 0.0 0.4
	size 96
	secondarySize 104
	chance 0.25
}

flickerlight DARKIMPBALL_X3
{
	color 0.0 0.0 0.2
	size 112
	secondarySize 120
	chance 0.25
}

object DarkImpBall
{
	frame BAL1A { light DARKIMPBALL    }
	frame BAL1B { light DARKIMPBALL    }

	frame BAL1C { light DARKIMPBALL_X1 }
	frame BAL1D { light DARKIMPBALL_X2 }
	frame BAL1E { light DARKIMPBALL_X3 }
}

// Zombies
object SuperShotgunGuy
{
	frame CPOSF { light ZOMBIEATK }
}

// Hectebus Fireball
object HectShot
{
	frame BAL7A { light BARONBALL    }
	frame BAL7B { light BARONBALL    }

	frame BAL7C { light BARONBALL_X1 }
	frame BAL7D { light BARONBALL_X2 }
	frame BAL7E { light BARONBALL_X3 }
}