ACTOR Hunter : PlayerPawn
{
  +NOSKIN
  +QUICKTORETALIATE
  player.soundclass "NHunter"
  limitedtoteam 0
  Speed 1
  +NOICEDEATH
  +GHOST
  Health 100
  Player.Maxhealth 100
  Radius 16
  Height 56
  player.forwardmove 1.18
  player.sidemove 1.0
  mass 700
  PainChance 256
  Player.DisplayName "Hunter"
  player.startitem "Bow", 1
  player.startitem "FireBow", 1
  player.startitem "IceBow", 1
  player.startitem "LightningBow", 1
  player.startitem "ArrowSingle", 40
  player.startitem "Allmap", 1
  player.startitem "huntertracking", 1
  player.startitem "IsHuman", 1
  Player.StartItem "IsHunter", 1
  Player.StartItem "Screamer", 0
  player.scoreicon "HUNTERST"
  Player.ColorRange 112, 127
  Damagefactor "normal", 0.9
  DamageFactor "fire2", 0.8
  DamageFactor "GhostTrap", 0.0
  Damagefactor "Sentinel", 0.0
  Damagefactor "MechPewPews", 0.0
  Damagefactor "MacheteSlicerino", 0.0
  Damagefactor "GasterSmokeHurt", 0.0
  Damagefactor "StrifeSuit", 0.0
  States
  {
  Spawn:
	TNT1 A 0 ACS_NamedExecute("PlayerSpawn")
	HUNT A 0 A_JumpIfInventory("GloomWatchStack",100,"GloomDeath")
    HUNT A 0 Setplayerproperty(0,0,0)
    Goto Steady
	Steady:
	HUNT A 0 A_JumpIfInventory("GloomWatchStack",100,"GloomDeath")
	HUNT A 1
	Goto Spawn
  See:
	HUNT A 0 A_JumpIfInventory("GloomWatchStack",100,"GloomDeath")
	HUNT A 0 A_JumpIfHealthLower(50,"INeedHealingSee")
    HUNT ABCD 4 
    Goto Spawn
  INeedHealingSee:
	HUNT A 0 A_JumpIfInventory("GloomWatchStack",100,"GloomDeath")
	HUNT A 0 A_SpawnItemEx("INeedHealingTrail",random(-20,20),random(-20,20),0,0,0,10)
    HUNT ABCD 4 
    Goto Spawn
  Missile:
	HUNT A 0 A_JumpIfInventory("GloomWatchStack",100,"GloomDeath")
    HUNT E 12 
    Goto Spawn
  Melee:
	HUNT A 0 A_JumpIfInventory("GloomWatchStack",100,"GloomDeath")
    HUNT F 6
    Goto Missile
	Pain.TeleOtherPlant:
	TNT1 A 0 A_GiveInventory("TeleOtherPlanted",1)
	Goto Pain
	Pain.TeleOtherActivateDamage:
	TNT1 A 0 A_JumpIfInventory("TeleOtherPlanted",1,"TeleOtherSend")
	Goto Pain	
	TeleOtherSend:
	TNT1 A 0 A_TakeInventory("TeleOtherPlanted",1)
	TNT1 A 0 A_PlaySound("TeleOther/activate",CHAN_7,1)
	TNT1 A 0 A_SpawnItem("TeleOtherFog")
	TNT1 A 0 ACS_ExecuteAlways(466,0,2)
	HUNT G 1 A_PlaySound("TeleOther/activate",CHAN_6,1)
	TNT1 A 0 A_SpawnItem("TeleOtherFog")
	Goto Pain
	Death.TeleOtherActivateDamage:
	TNT1 A 0 A_JumpIfInventory("TeleOtherPlanted",1,"TeleOtherSplode")
	TNT1 A 0 A_TakeInventory("TeleOtherPlanted",1)
	TNT1 A 0 A_PlaySound("TeleOther/activate",CHAN_7,1)
	TNT1 A 0 A_SpawnItem("TeleOtherFog")
	TNT1 A 0 A_GiveToTarget("KilledMe",1)
	HUNT G 1 A_PlaySound("Gibbage/XSplat")
	NULL A 0 A_SpawnItemEx("Custom_BloodySkull2", 0, 0, 48, 0.5, 0, 10, random(0,360), SXF_ABSOLUTEVELOCITY)
	NULL A 0 A_PlaySound("gibbage/playergib") 
	NULL A 0 A_NoBlocking 
	NULL A 0 A_SpawnItemEx("PLAYERBOOT", 0, 0, 11, 0, 0, 27, 33, 160, 0)
	NULL A 0 A_SpawnItemEx("PLAYERBOOT", 0, 0, 11, 0, 0, 27, -33, 160, 0)
	NULL A 0 A_SpawnItemEx("SHOTGUYARM", 0, 0, 25, 0, 0, 50, random(0,360), 160, 0)
	NULL A 0 A_SpawnItemEx("SHOTGUYARM", 0, 0, 36, 0, 0, 32, random(0,360), 160, 0)
	NULL A 1 A_SpawnItemEx("GIBBER", 0, 0, 0, 0, 0, 0, 0, 160, 0)
	NULL A -1
	Stop
	TeleOtherSplode:
	TNT1 A 0 A_TakeInventory("TeleOtherPlanted",1)
	TNT1 A 0 A_SpawnItem("TeleOtherFog")
	TNT1 A 0 A_PlaySound("TeleOther/activate",CHAN_7,1)
	TNT1 A 0 ACS_ExecuteAlways(466,0,2)
	TNT1 A 0 A_GiveToTarget("KilledMe",1)
	HUNT G 1 A_PlaySound("Gibbage/XSplat")
	TNT1 A 0 A_SpawnItem("TeleOtherFog")
	TNT1 A 0 A_PlaySound("TeleOther/activate",CHAN_6,1)
	NULL A 0 A_SpawnItemEx("Custom_BloodySkull2", 0, 0, 48, 0.5, 0, 10, random(0,360), SXF_ABSOLUTEVELOCITY)
	NULL A 0 A_PlaySound("gibbage/playergib") 
	NULL A 0 A_NoBlocking 
	NULL A 0 A_SpawnItemEx("PLAYERBOOT", 0, 0, 11, 0, 0, 27, 33, 160, 0)
	NULL A 0 A_SpawnItemEx("PLAYERBOOT", 0, 0, 11, 0, 0, 27, -33, 160, 0)
	NULL A 0 A_SpawnItemEx("SHOTGUYARM", 0, 0, 25, 0, 0, 50, random(0,360), 160, 0)
	NULL A 0 A_SpawnItemEx("SHOTGUYARM", 0, 0, 36, 0, 0, 32, random(0,360), 160, 0)
	NULL A 1 A_SpawnItemEx("GIBBER", 0, 0, 0, 0, 0, 0, 0, 160, 0)
	NULL A -1
	Pain.Choke:
		TNT1 A 0 A_GiveToTarget("Health",2)
		TNT1 A 0 A_GiveToTarget("ChokeCharging",1)
		Goto Pain
	Pain.JusticarSpike:
		TNT1 A 0 ACS_NamedExecuteAlways("ChangeActivator",0)
		TNT1 A 0 A_GiveToTarget("Health",2)
  Pain:
	HUNT G 0 A_JumpIfInventory("GloomWatchStack",100,"GloomDeath")
    HUNT G 4
    HUNT G 4 A_Pain
    Goto Spawn
	Pain.GloomWatcherLure:
	TNT1 A 0 ACS_ExecuteAlways(134)
	TNT1 A 0 A_Playsound("GloomWatcher/FeintAttack",CHAN_7)
	Goto pain
	Death.GloomWatcherlure:
	TNT1 A 0 ACS_ExecuteAlways(134)
	TNT1 A 0 A_Playsound("GloomWatcher/FeintAttack",CHAN_7)
	Goto Death.Jitter
	GloomDeath:
	TNT1 A 0 Damagething(99999,18)
	Goto Death
	Death.Fleshbent:
	TNT1 A 0 A_GiveToTarget("TentacleAmmo",2)
	TNT1 A 0 A_GiveToTarget("Soulscepter1",15)
	TNT1 A 0 A_GiveToTarget("Soulscepter2",50)
	Goto Death.Jitter
	Pain.LoonaClawing:
	TNT1 A 0 A_GiveToTarget("Health",6)
	HUNT G 20 Setplayerproperty(0,1,0)
	HUNT G 2 Setplayerproperty(0,0,0)
	Goto Spawn
	Pain.LoonaClawingLightSFX:
	TNT1 A 0 A_PlaySound("Bastet/ClawHitLight",CHAN_6)
	TNT1 A 0 A_GiveToTarget("Health",5)
	HUNT G 20 Setplayerproperty(0,1,0)
	HUNT G 2 Setplayerproperty(0,0,0)
	Goto Spawn
	Pain.LoonaClawingHeavySFX:
	TNT1 A 0 A_PlaySound("Bastet/ClawHitHeavy",CHAN_6)
	TNT1 A 0 A_GiveToTarget("Health",8)
	HUNT G 20 Setplayerproperty(0,1,0)
	HUNT G 2 Setplayerproperty(0,0,0)
	Goto Spawn
	Death.LoonaClawing:
	TNT1 A 0 A_PlaySound("Bastet/ClawHitHeavy",CHAN_6)
	TNT1 A 0 A_GiveToTarget("Health",50)
	Goto Death.Jitter
	Death.LoonaClawingLightSFX:
	TNT1 A 0 A_PlaySound("Bastet/ClawHitLight",CHAN_6)
	TNT1 A 0 A_GiveToTarget("Health",50)
	Goto Death.Jitter
	Death.LoonaClawingHeavySFX:
	TNT1 A 0 A_PlaySound("Bastet/ClawHitHeavy",CHAN_6)
	TNT1 A 0 A_GiveToTarget("Health",50)
	Goto Death.Jitter
	Pain.BastetClawing:
	TNT1 A 0 A_GiveToTarget("Health",4)
	Goto Pain
	Pain.BastetClawingLightSFX:
	TNT1 A 0 A_PlaySound("Bastet/ClawHitLight",CHAN_5)
	TNT1 A 0 A_GiveToTarget("Health",3)
	Goto Pain
	Pain.BastetClawingHeavySFX:
	TNT1 A 0 A_PlaySound("Bastet/ClawHitHeavy",CHAN_5)
	TNT1 A 0 A_GiveToTarget("Health",6)
	Goto Pain
	Pain.Sickle:
	TNT1 A 0 ACS_NamedExecuteAlways("ChangeActivator",0)
	Pain.Wendigo:
	TNT1 A 0 A_PlaySound("RAVEN1",CHAN_5)
	TNT1 A 0 A_SpawnItemEx ("GIB4", 0, 0, random(0,42), 0, 0, random(2,4), random(0,360), 128)
	TNT1 A 0 A_SpawnItemEx ("GIB4", 0, 0, random(0,42), 0, 0, random(2,4), random(0,360), 128)
	Goto Pain
  Pain.Justicar:
	TNT1 A 0 A_custommissile("Justicarattack",14,0,random(0,360))
	TNT1 A 0 A_GiveToTarget("Health",1)
	TNT1 A 0 A_GiveToTarget("JusticarSecondaryAmmo",1)
	Goto pain
  Pain.Creepstun:
    HUNT G 0 A_Pain
	HUNT G 0 A_GiveToTarget("health",5)
	HUNT G 40 Setplayerproperty(0,1,0)
	HUNT G 2 Setplayerproperty(0,0,0)
	Goto Spawn
  Death.Creeper:
	HUNT A 0 A_PlaySoundEx("creeperattack", "Body")
	HUNT A 0 A_SpawnItemEx("CreeperPopUp",0,0,10)
	TNT1 A 0 A_GiveToTarget("GhoulAmmo",1)
	HUNT A 0 A_GiveToTarget("Creeperheal",1)
    HUNT A 0 ACS_ExecuteAlways(997,0,1)
	goto DeathAnimAlt
  Death.Creepstun:
	HUNT A 0 A_GiveToTarget("Unlock13",1)
	HUNT A 0 A_GiveToTarget("CreepGotya",1)
	goto DeathAnimAlt
  Death.SjasScream:
  Death.FrostbiteWind:
  Death.EmtalicSaw:
  Death.LichFire:
    HUNT A 0 A_GiveToTarget("KilledJ",1)
    Goto DeathAnim
  Death:
  DeathAnim:
	HUNT A 0 A_GiveToTarget("KillBeep",1)
	HUNT A 0 A_GiveInventory("ItemDeath",1)
	HUNT A 0 A_TakeInventory("KilledCount",999)
    HUNT A 0 A_GiveToTarget("KilledMe",1)
    HUNT A 0 A_GiveToTarget("KilledHunter",1)
    HUNT H 8
    HUNT I 8 A_PlayerScream
    HUNT J 8 A_NoBlocking
    HUNT KLM 8
    HUNT N -1
    Stop
  DeathAnimAlt:
	HUNT A 0 A_GiveToTarget("KillIndicator",1)
	HUNT A 0 A_GiveInventory("ItemDeath",1)
	HUNT A 0 A_TakeInventory("KilledCount",999)
    HUNT A 0 A_GiveToTarget("KilledMe",1)
    HUNT A 0 A_GiveToTarget("KilledHunter",1)
    HUNT H 8
    HUNT I 8 A_PlayerScream
    HUNT J 8 A_NoBlocking
    HUNT KLM 8
    HUNT N -1
    Stop
	Death.GhoulChainSaw:
	TNT1 A 0 A_GiveToTarget("Health",50)
	TNT1 A 0 A_GiveToTarget("BearTarpsAmmo",1)
	TNT1 A 0 A_GiveToTarget("SawyerRageammo",10)
	TNT1 A 0 A_GiveToTarget("DUMMY_SawyerBloodyChainsaw", 1)
	Goto Death.Jitter
	Death.BastetClawing:
	TNT1 A 0 A_PlaySound("Bastet/ClawHitHeavy",CHAN_6)
	TNT1 A 0 A_GiveToTarget("Health",30)
	Goto Death.Jitter
	Death.BastetClawingLightSFX:
	TNT1 A 0 A_PlaySound("Bastet/ClawHitLight",CHAN_6)
	TNT1 A 0 A_GiveToTarget("Health",30)
	Goto Death.Jitter
	Death.BastetClawingHeavySFX:
	TNT1 A 0 A_PlaySound("Bastet/ClawHitHeavy",CHAN_6)
	TNT1 A 0 A_GiveToTarget("Health",30)
	Goto Death.Jitter
	Death.Choke:
		TNT1 A 0 A_GiveToTarget("Health",25)
		TNT1 A 0 A_GiveToTarget("ChokeCharging",40)
	Goto Death.Jitter
	Death.JusticarSpike:
		TNT1 A 0 A_GiveToTarget("Health",15)
	Goto Death.Jitter
	Death.Sinistar:
		TNT1 A 0 A_GiveToTarget("SiniPrimary",1)
	Goto Death.Jitter
  Death.MapGibber:
	TNT1 A 0 A_PlaySound("car/hit",chan_auto)
  Death.MapGibber2:
  Death.Jitter:
	HUNT A 0 A_GiveToTarget("KillBeep",1)
	HUNT A 0 A_GiveInventory("ItemDeath",1)
    HUNT A 0 A_GiveToTarget("Crunched",1)
	HUNT A 0 A_GiveToTarget("KilledMe",1)
	HUNT A 0 A_GiveToTarget("KilledHunter",1)
	HUNT G 1 A_PlaySound("Gibbage/XSplat")
	NULL A 0 A_SpawnItemEx("Custom_BloodySkull2", 0, 0, 48, 0.5, 0, 10, random(0,360), SXF_ABSOLUTEVELOCITY)
	NULL A 0 A_PlaySound("gibbage/playergib") 
	NULL A 0 A_NoBlocking 
	NULL A 0 A_SpawnItemEx("PLAYERBOOT", 0, 0, 11, 0, 0, 27, 33, 160, 0)
	NULL A 0 A_SpawnItemEx("PLAYERBOOT", 0, 0, 11, 0, 0, 27, -33, 160, 0)
	NULL A 0 A_SpawnItemEx("SHOTGUYARM", 0, 0, 25, 0, 0, 50, random(0,360), 160, 0)
	NULL A 0 A_SpawnItemEx("SHOTGUYARM", 0, 0, 36, 0, 0, 32, random(0,360), 160, 0)
	NULL A 1 A_SpawnItemEx("GIBBER", 0, 0, 0, 0, 0, 0, 0, 160, 0)
	NULL A -1
	Stop
  Death.JitterAlt:
	HUNT A 0 A_GiveToTarget("KillIndicator",1)
	HUNT A 0 A_GiveInventory("ItemDeath",1)
    HUNT A 0 A_GiveToTarget("Crunched",1)
	HUNT A 0 A_GiveToTarget("KilledMe",1)
	HUNT A 0 A_GiveToTarget("KilledHunter",1)
	HUNT G 1 A_PlaySound("Gibbage/XSplat")
	NULL A 0 A_SpawnItemEx("Custom_BloodySkull2", 0, 0, 48, 0.5, 0, 10, random(0,360), SXF_ABSOLUTEVELOCITY)
	NULL A 0 A_PlaySound("gibbage/playergib") 
	NULL A 0 A_NoBlocking 
	NULL A 0 A_SpawnItemEx("PLAYERBOOT", 0, 0, 11, 0, 0, 27, 33, 160, 0)
	NULL A 0 A_SpawnItemEx("PLAYERBOOT", 0, 0, 11, 0, 0, 27, -33, 160, 0)
	NULL A 0 A_SpawnItemEx("SHOTGUYARM", 0, 0, 25, 0, 0, 50, random(0,360), 160, 0)
	NULL A 0 A_SpawnItemEx("SHOTGUYARM", 0, 0, 36, 0, 0, 32, random(0,360), 160, 0)
	NULL A 1 A_SpawnItemEx("GIBBER", 0, 0, 0, 0, 0, 0, 0, 160, 0)
	NULL A -1
	Stop
  Death.Harvester:
		TNT1 A 0 A_GiveToTarget("SoulHarvesterFragment",1)
		TNT1 A 0 A_GiveToTarget("KilledJ",1)
		Goto Death.Jitter
	Death.HarvesterRock:
		TNT1 A 0 ACS_NamedExecute("SilverFieldsBell",55)
		Goto DeathAnim
	Death.HarvesterAlt:
		TNT1 A 0 A_GiveToTarget("Crunched2",1)
		TNT1 A 0 ACS_NamedExecute("SilverFieldsBell",55)
		Goto Death.Jitter
  Death.Ravager:
		HUNT A 0 A_GiveToTarget("KilledR",1)
		HUNT A 0 A_GiveToTarget("Health",100)
		HUNT A 0 ACS_ExecuteAlways(997,0,2)
		HUNT A 0 A_PlaySoundEx("RavagerAttack","Body")
		HUNT A 0 A_SpawnItemEx("RavagerHit",0,0,32)
		Goto DeathAnimAlt
	Death.RavagerBall:
		HUNT A 0 A_GiveToTarget("RavagerGotYa",1)
		HUNT A 0 A_GiveToTarget("KilledJ",1)
		Goto DeathAnimAlt
	Death.Yurei:
		HUNT A 0 A_GiveToTarget("KilledY",1)
		HUNT A 0 A_PlaySoundEx("YureiKill1","Body",0,1)
		HUNT A 0 ACS_ExecuteAlways(997,0,3)
		Goto DeathAnimAlt
	Death.YureiBall:
		HUNT A 0 A_GiveToTarget("Health",10)
		HUNT A 0 A_SpawnItemEx("BallFire")
		Goto Death.SjasScream
	Death.UboaRawrScream:
		Goto DeathAnimAlt
	Death.Misty:
	Death.Whiteface:
		HUNT A 0 A_GiveToTarget("KillBeep",1)
		HUNT A 0 A_GiveInventory("ItemDeath",1)
		HUNT A 0 A_GiveToTarget("KilledMe",1)
		HUNT A 0 A_GiveToTarget("KilledM",1)
		HUNT HHHH 2 A_FadeOut(0.1)
		HUNT A 0 A_PlayerScream
		HUNT IIIIJJ 2 A_FadeOut(0.1)
		HUNT A 0 A_NoBlocking
		NULL A -1
		Stop
	Death.Clowny:
		HUNT A 0 ACS_ExecuteAlways(997,0,4)
		HUNT A 0 A_GiveToTarget("KilledC",1)
		HUNT A 0 A_GiveToTarget("ClownyAmmo",5)
		Goto DeathAnim
	Death.Mohoph:
		HUNT A 0 A_GiveToTarget("TransHunter",1)
		TNT1 A 0 A_GiveToTarget("MorphAmmo", 1)
		HUNT A 0 A_PlaySoundEx("MohophKill","Body")
		HUNT A 0 ACS_ExecuteAlways(997,0,5)
		Goto DeathAnim
	Death.EmtalicWeak:
		HUNT A 0 A_PlaySoundEx("RamSuccess","Body")
		Goto DeathAnim
	Death.Emtalic:
		HUNT A 0  A_PlaySoundEx("RamSuccess","Body")
		Goto Death.Jitter
	Death.I1:
		HUNT A 0 A_SpawnItemEx("Heart",0,0,32,random(2,3),momy,random(8,12),random(-180,180))
		HUNT A 0 A_GiveToTarget("KilledI1",1)
		Goto DeathAnim
	Death.I2:
		HUNT A 0 A_GiveToTarget("KillBeep",1)
		HUNT A 0 A_GiveInventory("ItemDeath",1)
		HUNT A 0 A_GiveToTarget("KilledMe",1)
		HUNT A 0 A_GiveToTarget("KilledI2",1)
		HUNT A 0 A_GiveToTarget("Clip",1)
		HUNT G 0 SetPlayerProperty(0,1,4)
		HUNT G 0 A_Stop
		HUNT GGGGGGGGGGGGGG 5 A_SpawnItemEx("PainSmoke",0,random(-22,22),random(-22,22),random(2,4),momy,random(8,12),random(-180,180))
		NULL A 0 A_PlayerScream
		NULL A 0 ACS_ExecuteAlways(997,0,6)
		NULL A 0 A_SpawnItemEx("PLAYERBOOT", 0, 0, 11, 0, 0, 27, 33, 160, 0)
		NULL A 0 A_SpawnItemEx("PLAYERBOOT", 0, 0, 11, 0, 0, 27, -33, 160, 0)
		NULL A 0 A_SpawnItemEx("SHOTGUYARM", 0, 0, 25, 0, 0, 50, random(0,360), 160, 0)
		NULL A 0 A_SpawnItemEx("SHOTGUYARM", 0, 0, 36, 0, 0, 32, random(0,360), 160, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner1", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner2", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner3", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner1", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner2", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner3", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner1", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner2", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner3", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner1", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner2", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner3", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner1", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner2", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner3", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner1", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner2", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner3", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner1", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner2", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner3", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner1", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner2", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner3", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner1", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner2", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner3", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner1", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner2", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner3", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner1", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner2", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner3", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner1", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner2", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner3", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner1", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner2", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner3", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner1", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner2", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
        NULL A 0 A_SpawnItemEx ("BoneShardSpawner3", 1, 1, random(8,32), random(0,5), random(0,5), random(8,18), random(0,360), SXF_NOCHECKPOSITION, 0)
		NULL A 1 A_SpawnItemEx("GIBBER", 0, 0, 0, 0, 0, 0, 0, 160, 0)
		NULL A 1 A_SpawnItemEx("SkullGib",0,0,0,random(2,4),random(2,4),random(8,12),random(-180,180))
		NULL A 1 A_SpawnItemEx("ChestGib",0,0,0,random(2,4),random(2,4),random(8,12),random(-180,180))
		NULL AA 1 A_SpawnItemEx("ArmGib",0,0,0,random(2,4),random(2,4),random(8,12),random(-180,180))
		NULL AA 1 A_SpawnItemEx("HandGib",0,0,0,random(2,4),random(2,4),random(8,12),random(-180,180))
		NULL A 1 A_SpawnItemEx("CoccyxGib",0,0,0,random(2,4),random(2,4),random(8,12),random(-180,180))
		NULL AA 1 A_SpawnItemEx("LegGib",0,0,0,random(2,4),random(2,4),random(8,12),random(-180,180))
		NULL AAAAAA 1 A_SpawnItemEx("BoneGib",0,0,0,random(2,4),random(2,4),random(8,12),random(-180,180))
		NULL A -1 A_NoBlocking
		Stop
	Death.I3:
		HUNT A 0 A_GiveToTarget("KillBeep",1)
		HUNT A 0 A_GiveInventory("ItemDeath",1)
		HUNT A 0 A_GiveToTarget("KilledMe",1)
		HUNT A 0 A_GiveToTarget("KilledI3",1)
		HUNT HHHHHHHH 1 A_SpawnItemEx("PainSmoke",0,random(-22,22),random(-22,22),random(2,4),momy,random(8,12),random(-180,180))
		HUNT I 0 A_PlayerScream
		HUNT IIIIIIII 1 A_SpawnItemEx("PainSmoke",0,random(-22,22),random(-22,22),random(2,4),momy,random(8,12),random(-180,180))
		HUNT J 0 A_NoBlocking
		HUNT JJJJJJJJKKKKKKKKLLLLLLLLMMMMMMMM 1 A_SpawnItemEx("PainSmoke",0,random(-22,22),random(-22,22),random(2,4),momy,random(8,12),random(-180,180))
		HUNT NNNNNNN 3 A_SpawnItemEx("PainSmoke",0,random(-22,22),random(-22,22),random(2,4),momy,random(8,12),random(-180,180))
		HUNT N -1
		Stop
	Death.I4:
		HUNT A 0 A_GiveToTarget("KilledI4",1)
		Goto DeathAnim
	Death.I5:
		HUNT A 0 A_GiveToTarget("KilledI5",1)
		Goto DeathAnim
	Pain.RavagerBall:
		HUNT A 0 ACS_ExecuteAlways(920,0)
		Goto Pain
	Pain.YureiBall:
		HUNT A 0 A_GiveToTarget("Health",10)
		HUNT A 0 A_SpawnItemEx("BallFire")
		Goto Pain
	Pain.Emtalic:
		HUNT A 0 A_PlaySoundEx("RamSuccess","Body")
		Goto Pain
	Pain.EmtalicWeak:
		HUNT A 0 A_PlaySoundEx("RamSuccess","Body")
		Goto Pain
	Death.Tenebra:
		TNT1 A 0 A_GiveToTarget("Health",20)
		Goto DeathAnim
	Death.TenebraRail:
	Death.Telefrag:
	Death.Grenade:
	Death.Termissiles:
	Death.ChaosExpl12:
	Death.KarenExplo:
	Death.IlluNukeKABUUM:
	Death.CalebDynamite:
	Death.Wendigo:
	Death.MorphRipperGib:
	Death.DarkVortex:
	Death.ImpostorJitter:
	Death.PuppetStrings:
	Death.LichIce:
	Death.LichLightning:
	Death.AsylumCannonBall:
		Goto Death.Jitter
	Death.TrueDivine:
		TNT1 A 0 A_PlaySoundEx("SoulSnatchStinger",CHAN_AUTO,0,1)
		TNT1 A 0 A_SpawnItemEx("SoulSnatch")
		Goto Death.JitterAlt
	Death.Judgement:
		TNT1 A 0 A_SpawnItemEx("StellarisThunderFX")
		Goto Death.JitterAlt
	Death.VoltMelee:
	Death.AmperRail:
		TNT1 A 0 A_GiveToTarget("VoltRingAmmo",2)
		TNT1 A 0 A_GiveToTarget("AmperSpeedTokenCheck",1)
		Goto Death.Jitter
	Pain.FrostbiteWind:
	Pain.Ravager:
	Pain.Juglava:
	Pain.HarvesterRock:
	Pain.EmtalicSaw:
	Pain.MorphRipper:
	Pain.MorphRipperGib:
	Pain.I1:
	Pain.I3:
	Pain.ZombiePoison:
	Pain.Asylum:
	Pain.AsylumCannonBall:
	Pain.FleshlingMissile:
	Pain.DarkVortex:
	Pain.ImpostorJitter:
	Pain.BlueFire:
	Pain.PuppetStrings:
	Pain.LichFire:
	Pain.LichIce:
	Pain.LichLightning:
	Pain.Whiteface:
		TNT1 A 0 ACS_NamedExecuteAlways("ChangeActivator",0)
		Goto Pain
	}
}

actor HunterTracking : PowerUpGiver
{
inventory.pickupmessage "Their blood is yours!"
powerup.type "PowerScanner"
powerup.duration -99999
inventory.maxamount 0
+INVENTORY.AUTOACTIVATE
+floatbob
-COUNTITEM
+INVENTORY.ALWAYSPICKUP
states
{
Spawn:
TNT1 A -1
stop
}
}


Actor Arrowdropped : CustomInventory
{ 
	Inventory.PickupMessage "You picked an Arrow" 
	Inventory.PickupSound "Misc/A_Pkup" 
	Scale 0.5
	Radius 8
	Height 2 
	States 
	{ 
	Spawn: 
		ARRW A 800
		Stop
	Pickup:
		TNT1 A 0 A_JumpIfInventory("Bow", 1,"Give")
		fail
	Give:
		TNT1 A 0 A_GiveInventory("ArrowSingle", 1)
		Stop
	} 
} 

ACTOR ArrowFire : FastProjectile
{ 
   Radius 4 
   Height 3 
   Speed 180
   Scale .5
   Damage (40)//7
   PROJECTILE 
   +NOGRAVITY 
   +ROCKETTRAIL
   DamageType "NormalArrow"
   decal "BulletChip"
   +NOEXTREMEDEATH
   SeeSound "weapons/bowfire"
   DeathSound "weapons/bowhit"
   States 
   { 
   Spawn: 
      ARRW AAAAAA 2
      ARRW A 0 A_Changeflag("NOGRAVITY", 0)
	  ARRW A 0 A_Changeflag("LOWGRAVITY", 1)
	  Loop
   XDeath:
      ARRW A 0 A_GiveToTarget("HitBeep",1)
      Goto Death
   Death: 
	  ARRW A 0 A_PlaySound("weapons/arrowhit")
      ARRW A 1 A_SpawnItemEx("Arrowdropped",0,0,0,0,0,0,0,32,0) 
      Stop 
   } 
}

ACTOR ArrowFire2 : FastProjectile
{ 
   Radius 4 
   Height 3 
   Speed 160
   Scale .5
   Damage (45)
   PROJECTILE 
   +NOGRAVITY 
   +ROCKETTRAIL
   DamageType "NormalArrow"
   decal "BulletChip"
   +NOEXTREMEDEATH
   SeeSound "weapons/bowfire"
   DeathSound "weapons/bowhit"
   States 
   { 
   Spawn: 
      ARRW AAAAAA 2
      ARRW A 0 A_Changeflag("NOGRAVITY", 0)
	  ARRW A 0 A_Changeflag("LOWGRAVITY", 1)
	  Loop
   XDeath:
      ARRW A 0 A_GiveToTarget("HitBeep",1)
	  Goto Death
   Death: 
	  ARRW A 0 A_PlaySound("weapons/arrowhit")
      ARRW A 1
      Stop 
   } 
}

actor FireRadius
{
+NOBLOCKMAP
+NODAMAGETHRUST
Obituary "%o was burnt to death by %k's fire magic."
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_RadiusGive("GhoulRadiusHit",150,RGF_PLAYERS,1)
TNT1 A 1 A_Explode(9,150,0)
TNT1 BCDE 1
Stop
}
}

actor NormalRadius : FireRadius
{
-NODAMAGETHRUST
Obituary "%o was killed by %k's magic." 
states
{
Spawn:
TNT1 A 0
TNT1 A 0 A_RadiusGive("GhoulNormalRadiusHit",176,RGF_PLAYERS,1)
TNT1 A 1 A_Explode(55,176,0)//60
TNT1 BCDE 1
Stop
}
}

Actor GhoulRadiusHit : CustomInventory
{
    Inventory.Amount 1
    Inventory.MaxAmount 9999
    +INVENTORY.QUIET
    States
    {
    Spawn:
        TNT1 A -1
        Stop
    Pickup:
        TNT1 A 0 A_RadiusGive("GhoulHitted",150,RGF_PLAYERS,1)
        Stop
    }
}

Actor GhoulNormalRadiusHit : GhoulRadiusHit
{
    States
    {
    Spawn:
        TNT1 A -1
        Stop
    Pickup:
        TNT1 A 0 A_RadiusGive("GhoulNormalHitted",176,RGF_PLAYERS,1)
        Stop
    }
}

Actor GhoulHitted : GhoulRadiusHit 
{
    States
    {
    Pickup:
        TNT1 A 0 A_RadiusGive("HunterBeep",150,RGF_PLAYERS,1)
        Stop
    }
}

Actor GhoulNormalHitted : GhoulRadiusHit
{
    States
    {
    Pickup:
        TNT1 A 0 A_RadiusGive("HunterBeep",176,RGF_PLAYERS,1)
        Stop
    }
}

Actor HunterBeep : GhoulRadiusHit 
{
    States
    {
    Pickup:
        TNT1 A 1 A_JumpIfInventory("IsHunter", 1, "Succeed")
    Stop
  Succeed:
    TNT1 A 1 A_GiveInventory("HitBeep", 1)
    Stop
    }
}

ACTOR Bow : Weapon 9901
{ 
    Inventory.PickupMessage "You picked up the bow." 
    Obituary "%o was pierced by %k's arrows." 
    AttackSound "weapons/LightningArrow"
    Weapon.AmmoType1 "ArrowSingle" 
	//Weapon.AmmoType2 "ArrowSingle" 
    Weapon.AmmoGive1 20 
    Weapon.AmmoUse1 1 
	weapon.kickback 2000
	inventory.icon "NBOW"
	//Weapon.AmmoUse2 0
    +NOALERT 
	+DONTBOB
	+INVENTORY.UNDROPPABLE
	Weapon.SlotNumber 1
	+WEAPON.NOAUTOAIM
	+AMMO_OPTIONAL
    Radius 30
	Height 10
    Scale .20 
    States 
    { 
    Spawn: 
       BOWP A 400
       Stop 
    Ready: 
	   BOWA A 0 A_PlaySoundEx("weapons/bowup", "Weapon")
	   BOWA H 1 A_WeaponReady 
       Goto Ready+1
    Deselect:
       BOWA H 1 A_Lower
	   Loop
    Select: 
       BOWA H 1 A_Raise
       Loop
    Fire:
	   BOWA H 0 A_JumpIfNoAmmo("FireSlow")
	   BOWA H 0
       BOWA HIJKL 2//3
	   BOWA L 1 A_PlaySoundEx ("weapons/bowdraw", "SoundSlot7")
	Goto Hold
	FireSlow:
	   BOWA H 0
       BOWA HIJKL 5
	   BOWA L 2 A_PlaySoundEx ("weapons/bowdraw", "SoundSlot7")
	   Goto Hold
    Altfire:
	   BOWA GFE 3
	   BOWA E 17 A_GunFlash
	   BOWA EFG 5
	   BOWA H 12
	   BOWA H 1 A_WeaponReady 
	   Goto Ready+1
	Hold:
       BOWA M 1
       BOWA M 0 A_Refire
	   BOWA O 0 A_StopSoundEx("SoundSlot7")
	   BOWA H 0 A_JumpIfNoAmmo("ShootSlow")
	   BOWA O 0 A_Playsound("Bow/FireThings",CHAN_WEAPON)
	   BOWA O 0 A_FireCustomMissile("ArrowFire", 0, 1, 8, 0)
       BOWA P 3
	   BOWA G 4
       Goto Ready+1
	   Flash:
	   TNT1 A 0 ACS_ExecuteAlways(993, 0, 0)
	   TNT1 A 19
	   Stop
	ShootSlow:
	   BOWA O 0 A_Playsound("Bow/FireThings",CHAN_WEAPON)
	   BOWA O 0 A_FireCustomMissile("ArrowFire", 0, 1, 8, 0)
       BOWA P 6
	   BOWA G 8
       Goto Ready+1
	Flash:
	   WHIT ABC 2 bright
	   WHIT A 0 A_GiveInventory("SjasRepulsion",1)
	   WHIT A 0 A_PlaySoundEx("weapons/bowpowerup","Weapon")
	   WHIT A 0 A_SpawnItem("NormalRadius",0 ,0, 0)
	   WHIT DE 1 bright
	   WHIT EFEF 2 bright
	   WHIT CBA 1 bright
	   Stop
	NoArrows:
	   BOWA H 28 A_PlayWeaponSound("weapons/arrowno")
	   Goto Ready+1
    } 
} 

actor FireBow : Bow
{
Obituary "%o was scorched by %k's fire arrows." 
+WEAPON.NOAUTOAIM
Weapon.SlotNumber 2
inventory.icon "FBOW"
States
{
    Spawn: 
       BOWP A 400
       Stop 
    Ready: 
	   BOWA A 0 A_PlaySoundEx("weapons/bowfswitch", "Weapon")
	   BOWA H 1 A_WeaponReady 
       Goto Ready+1
    Deselect: 
       BOWA H 1 A_Lower
	   Loop
    Select: 
       BOWA H 1 A_Raise
       Loop
    Fire:   
	   BOWA H 0 A_JumpIfNoAmmo("NoArrows")
	   BOWA H 0 ACS_ExecuteAlways(999,0)
       BOWA HIJKL 4
	   BOWA A 0 A_GiveInventory("LightningCheck",1)
	   BOWA H 0 ACS_ExecuteAlways(999,0)
	   BOWA A 0 A_GunFlash
	   BOWA L 2 A_PlaySoundEx ("weapons/bowdraw", "SoundSlot7")
	Goto Hold
	   Hold:
	   BOWA M 1 bright 
	   BOWF E 0 A_Refire
	   BOWA A 0 A_GiveInventory("LightningCheck",1)
	   BOWA H 0 A_Light0
	   BOWA O 0 A_StopSoundEx("SoundSlot7")
	   BOWA O 0 A_Playsound("FireBow/FireThings",CHAN_WEAPON)
	   BOWA O 0 A_FireCustomMissile("FlameArrow", 0, 1, 8, 0)
	   BOWA O 0 ACS_ExecuteAlways(998,0)
	   BOWA A 0 A_GunFlash
       BOWA P 18 
	   BOWA G 4 A_TakeInventory("LightningCheck",2)
	   Goto Ready+1
	Flash:
	   BOWL A 0 A_JumpIfInventory("LightningCheck",1,"SFlash")
	   RED5 ABC 2 bright
	   RED5 A 0 A_PlaySoundEx("weapons/firespin","Weapon")
	   RED5 D 1 bright
	   BLU5 A 0 A_SpawnItem("FireRadius",0 ,0, 0)
	   BLU5 A 0 A_JumpIf(health<1,"Goaway")
	   RED5 E 2 bright A_SpawnItemEx("FireSpinAttack",40,0,0,0,0,0,0,0)
	   BLU5 A 0 A_SpawnItem("FireRadius",0 ,0, 0)
	   BLU5 A 0 A_JumpIf(health<1,"Goaway")
	   RED5 F 2 bright A_SpawnItemEx("FireSpinAttack",20,20,0,0,0,0,0,0)
	   BLU5 A 0 A_SpawnItem("FireRadius",0 ,0, 0)
	   BLU5 A 0 A_JumpIf(health<1,"Goaway")
	   RED5 E 2 bright A_SpawnItemEx("FireSpinAttack",0,40,0,0,0,0,0,0)
	   BLU5 A 0 A_SpawnItem("FireRadius",0 ,0, 0)
	   BLU5 A 0 A_JumpIf(health<1,"Goaway")
	   RED5 F 2 bright A_SpawnItemEx("FireSpinAttack",-20,20,0,0,0,0,0,0)
	   BLU5 A 0 A_SpawnItem("FireRadius",0 ,0, 0)
	   BLU5 A 0 A_JumpIf(health<1,"Goaway")
	   RED5 E 2 bright A_SpawnItemEx("FireSpinAttack",-40,0,0,0,0,0,0,0)
	   BLU5 A 0 A_SpawnItem("FireRadius",0 ,0, 0)
	   BLU5 A 0 A_JumpIf(health<1,"Goaway")
	   RED5 F 2 bright A_SpawnItemEx("FireSpinAttack",-20,-20,0,0,0,0,0,0)
	   BLU5 A 0 A_SpawnItem("FireRadius",0 ,0, 0)
	   BLU5 A 0 A_JumpIf(health<1,"Goaway")
	   RED5 E 2 bright A_SpawnItemEx("FireSpinAttack",0,-40,0,0,0,0,0,0)
	   BLU5 A 0 A_SpawnItem("FireRadius",0 ,0, 0)
	   BLU5 A 0 A_JumpIf(health<1,"Goaway")
	   RED5 F 2 bright A_SpawnItemEx("FireSpinAttack",20,-20,0,0,0,0,0,0)
	   BLU5 A 0 A_SpawnItem("FireRadius",0 ,0, 0)
	   BLU5 A 0 A_JumpIf(health<1,"Goaway")
	   RED5 E 2 bright A_SpawnItemEx("FireSpinAttack",40,0,0,0,0,0,0,0)
	   BLU5 A 0 A_SpawnItem("FireRadius",0 ,0, 0)
	   BLU5 A 0 A_JumpIf(health<1,"Goaway")
	   RED5 F 2 bright A_SpawnItemEx("FireSpinAttack",20,20,0,0,0,0,0,0)
	   BLU5 A 0 A_SpawnItem("FireRadius",0 ,0, 0)
	   BLU5 A 0 A_JumpIf(health<1,"Goaway")
	   RED5 E 2 bright A_SpawnItemEx("FireSpinAttack",0,40,0,0,0,0,0,0)
	   BLU5 A 0 A_SpawnItem("FireRadius",0 ,0, 0)
	   BLU5 A 0 A_JumpIf(health<1,"Goaway")
	   RED5 F 2 bright A_SpawnItemEx("FireSpinAttack",-20,20,0,0,0,0,0,0)
	   BLU5 A 0 A_SpawnItem("FireRadius",0 ,0, 0)
	   BLU5 A 0 A_JumpIf(health<1,"Goaway")
	   RED5 E 2 bright A_SpawnItemEx("FireSpinAttack",-40,0,0,0,0,0,0,0)
	   BLU5 A 0 A_SpawnItem("FireRadius",0 ,0, 0)
	   BLU5 A 0 A_JumpIf(health<1,"Goaway")
	   RED5 F 2 bright A_SpawnItemEx("FireSpinAttack",-20,-20,0,0,0,0,0,0)
	   BLU5 A 0 A_SpawnItem("FireRadius",0 ,0, 0)
	   BLU5 A 0 A_JumpIf(health<1,"Goaway")
	   RED5 E 2 bright A_SpawnItemEx("FireSpinAttack",0,-40,0,0,0,0,0,0)
	   BLU5 A 0 A_SpawnItem("FireRadius",0 ,0, 0)
	   BLU5 A 0 A_JumpIf(health<1,"Goaway")
	   RED5 F 2 bright A_SpawnItemEx("FireSpinAttack",20,-20,0,0,0,0,0,0)
	   BLU5 A 0 A_SpawnItem("FireRadius",0 ,0, 0)
	   BLU5 A 0 A_JumpIf(health<1,"Goaway")
	   RED5 E 2 bright A_SpawnItemEx("FireSpinAttack",40,0,0,0,0,0,0,0)
	   BLU5 A 0 A_SpawnItem("FireRadius",0 ,0, 0)
	   BLU5 A 0 A_JumpIf(health<1,"Goaway")
	   RED5 F 2 bright A_SpawnItemEx("FireSpinAttack",20,20,0,0,0,0,0,0)
	   BLU5 A 0 A_SpawnItem("FireRadius",0 ,0, 0)
	   BLU5 A 0 A_JumpIf(health<1,"Goaway")
	   RED5 E 2 bright A_SpawnItemEx("FireSpinAttack",0,40,0,0,0,0,0,0)
	   BLU5 A 0 A_SpawnItem("FireRadius",0 ,0, 0)
	   BLU5 A 0 A_JumpIf(health<1,"Goaway")
	   RED5 F 2 bright A_SpawnItemEx("FireSpinAttack",-20,20,0,0,0,0,0,0)
	   BLU5 A 0 A_SpawnItem("FireRadius",0 ,0, 0)
	   BLU5 A 0 A_JumpIf(health<1,"Goaway")
	   RED5 E 2 bright A_SpawnItemEx("FireSpinAttack",-40,0,0,0,0,0,0,0)
	   BLU5 A 0 A_SpawnItem("FireRadius",0 ,0, 0)
	   BLU5 A 0 A_JumpIf(health<1,"Goaway")
	   RED5 F 2 bright A_SpawnItemEx("FireSpinAttack",-20,-20,0,0,0,0,0,0)
	   BLU5 A 0 A_SpawnItem("FireRadius",0 ,0, 0)
	   BLU5 A 0 A_JumpIf(health<1,"Goaway")
	   RED5 E 2 bright A_SpawnItemEx("FireSpinAttack",0,-40,0,0,0,0,0,0)
	   BLU5 A 0 A_SpawnItem("FireRadius",0 ,0, 0)
	   BLU5 A 0 A_JumpIf(health<1,"Goaway")
	   RED5 F 2 bright A_SpawnItemEx("FireSpinAttack",20,-20,0,0,0,0,0,0)
	   BLU5 A 0 A_SpawnItem("FireRadius",0 ,0, 0)
	   BLU5 A 0 A_JumpIf(health<1,"Goaway")
	   RED5 E 2 bright A_SpawnItemEx("FireSpinAttack",40,0,0,0,0,0,0,0)
	   BLU5 A 0 A_SpawnItem("FireRadius",0 ,0, 0)
	   BLU5 A 0 A_JumpIf(health<1,"Goaway")
	   RED5 F 2 bright A_SpawnItemEx("FireSpinAttack",20,20,0,0,0,0,0,0)
	   BLU5 A 0 A_SpawnItem("FireRadius",0 ,0, 0)
	   BLU5 A 0 A_JumpIf(health<1,"Goaway")
	   RED5 E 2 bright A_SpawnItemEx("FireSpinAttack",0,40,0,0,0,0,0,0)
	   BLU5 A 0 A_SpawnItem("FireRadius",0 ,0, 0)
	   BLU5 A 0 A_JumpIf(health<1,"Goaway")
	   RED5 F 2 bright A_SpawnItemEx("FireSpinAttack",-20,20,0,0,0,0,0,0)
	   BLU5 A 0 A_SpawnItem("FireRadius",0 ,0, 0)
	   BLU5 A 0 A_JumpIf(health<1,"Goaway")
	   RED5 E 2 bright A_SpawnItemEx("FireSpinAttack",-40,0,0,0,0,0,0,0)
	   BLU5 A 0 A_SpawnItem("FireRadius",0 ,0, 0)
	   BLU5 A 0 A_JumpIf(health<1,"Goaway")
	   RED5 F 2 bright A_SpawnItemEx("FireSpinAttack",-20,-20,0,0,0,0,0,0)
	   BLU5 A 0 A_SpawnItem("FireRadius",0 ,0, 0)
	   BLU5 A 0 A_JumpIf(health<1,"Goaway")
	   RED5 E 2 bright A_SpawnItemEx("FireSpinAttack",0,-40,0,0,0,0,0,0)
	   BLU5 A 0 A_SpawnItem("FireRadius",0 ,0, 0)
	   BLU5 A 0 A_JumpIf(health<1,"Goaway")
	   RED5 F 2 bright A_SpawnItemEx("FireSpinAttack",20,-20,0,0,0,0,0,0)
	   RED5 DCBA 1 bright
	   Stop
		SFlash:
	   BOWL G 1 bright
	   BOWL A 0 A_JumpIfInventory("LightningCheck",2,"Goaway")
	   BOWL G 1 bright
	   BOWL A 0 A_JumpIfInventory("LightningCheck",2,"Goaway")
	   BOWL G 1 bright
	   BOWL A 0 A_JumpIfInventory("LightningCheck",2,"Goaway")
	   BOWL H 1 bright
	   BOWL A 0 A_JumpIfInventory("LightningCheck",2,"Goaway")
	   BOWL H 1 bright
	   BOWL A 0 A_JumpIfInventory("LightningCheck",2,"Goaway")
	   BOWL H 1 bright
	   BOWL A 0 A_JumpIfInventory("LightningCheck",2,"Goaway")
	   BOWL I 1 bright
	   BOWL A 0 A_JumpIfInventory("LightningCheck",2,"Goaway")
	   BOWL I 1 bright
	   BOWL A 0 A_JumpIfInventory("LightningCheck",2,"Goaway")
	   BOWL I 1 bright
	   BOWL A 0 A_JumpIfInventory("LightningCheck",2,"Goaway")
	   loop
	Goaway:
	   TNT1 A 0
	   stop
	NoArrows:
	   BOWA H 28 A_PlayWeaponSound("weapons/arrowno")
	   Goto Ready+1
	Altfire:
	   BOWA GFE 4
	   BOWA E 60 A_GunFlash
	   BOWA EFG 8
	   BOWA H 8
	   BOWA H 1 A_WeaponReady 
	   Goto Ready+1
}
}

ACTOR FlameArrow : FastProjectile
{ 
   Radius 3 
   Height 2 
   Speed 80
   Decal "Scorch"
   Scale .5
   Damage 8
   damagetype "fire2"
   +DONTBLAST
   Obituary "%o was scorched by %k's fire arrows." 
   PROJECTILE 
   +NODAMAGETHRUST
   +NOGRAVITY 
   +NOEXTREMEDEATH
   +SKYEXPLODE
   +SEEKERMISSILE
   renderstyle translucent
   alpha 1.0
   SeeSound "weapons/flamearrow"
   DeathSound "weapons/arrowexplode"
   States 
   { 
   Spawn: 
      FARW A 2 bright A_SpawnItemEx("Flamearrowtrail",0,0,0,0,0,0,0,128) 
	  FARW A 0 A_Explode(12,80,0)
	  Loop
   XDeath: 
	  TNT1 A 0 A_GiveToTarget("HitBeep",1)
	  TNT1 A 0 A_Jump(256,"DeathCont")
	  Goto DeathCont
   Death: 
	  TNT1 A 0 A_ChangeFlag("NOINTERACTION",1)
	  TNT1 A 0 A_Stop
      TNT1 A 0 A_SeekerMissile(0,0,SMF_LOOK|SMF_CURSPEED,256)
	  TNT1 A 0 A_JumpIfTargetInLOS("SplashBeep",360,JLOSF_PROJECTILE,141)
	  TNT1 A 0 A_Jump(256,"DeathCont")
	  Goto DeathCont
   SplashBeep:
	  TNT1 A 0 A_GiveToTarget("HitBeep",1)
	  TNT1 A 0 A_Jump(256,"DeathCont")
	  Goto DeathCont
   DeathCont:
	  ARRW A 0 A_Explode(45,100,1)
	  ARRW A 0 A_SpawnItemEx("Arrowdropped",0,0,0,0,0,0,0,32,0) 
      HELX ABCDEFGHIJ 2 bright A_FadeOut(0.05)
	  Stop
   } 
} 

Actor HunterFreezeSlow : CustomInventory
{
	inventory.amount 1
	inventory.maxamount 1
	+inventory.alwayspickup
	+inventory.quiet
	+inventory.ignoreskill
	inventory.pickupsound ""
	inventory.pickupmessage ""
	scale 0.25
	states
	{
	Spawn:
		TNTA A 10
		stop
	Pickup:
		TNT1 A 0
		TNT1 A 0 A_JumpIfInventory("IsHuman",1,3)
		TNT1 A 0 A_JumpIfInventory("BenedictioMortis",1,3)
		TNT1 A 0 A_JumpIfInventory("ClownyAmmo",1,2)
		TNT1 A 1 ACS_ExecuteAlways(319,0)
		stop
		TNT1 A 1 //A_Print("lel")
		fail
	}
}

actor IceBow : Bow
{
Weapon.SlotNumber 3
Obituary "%o was frozen by %k's ice arrows." 
+WEAPON.NOAUTOAIM
inventory.icon "IBOW"
States
{
    Spawn: 
       BOWP A 400
       Stop 
    Ready: 
	   BOWA A 0 A_PlaySoundEx("weapons/bowiswitch", "Weapon")
	   BOWA H 1 A_WeaponReady 
       Goto Ready+1
    Deselect: 
       BOWA H 1 A_Lower
	   Loop
    Select: 
       BOWA H 1 A_Raise
       Loop
    Fire:    
	   BOWA H 0 A_JumpIfNoAmmo("NoArrows")
	   BOWA H 0 ACS_ExecuteAlways(999,0)
       BOWA HIJKL 3
	   BOWA A 0 A_GiveInventory("LightningCheck",1)
	   BOWA H 0 ACS_ExecuteAlways(999,0)
	   BOWA A 0 A_GunFlash
	   BOWA L 2 A_PlaySoundEx ("weapons/bowdraw", "SoundSlot7")
	Goto Hold
	Hold:
	   BOWA M 1 bright
	   BOWF E 0 A_Refire
	   BOWA H 0 A_Light0
	   BOWA H 0 A_GiveInventory("LightningCheck",1)
	   BOWA O 0 A_StopSoundEx("SoundSlot7")
	   BOWA O 0 A_FireCustomMissile("IceArrow", 0, 1, 8, 0)
	   BOWA O 0 A_FireCustomMissile("IceArrow2", random(-5,5), 0, 11, 0)
	   BOWA O 0 A_FireCustomMissile("IceArrow2", random(-5,5), 0, 5, 0)
	   BOWA O 0 A_FireCustomMissile("IceArrow2", random(-5,5), 0, 8, 4)
	   BOWA O 0 A_FireCustomMissile("IceArrow2", random(-5,5), 0, 8, -4)
	   BOWA O 0 A_FireCustomMissile("IceArrow2", random(-5,5), 0, random(5,11), random(-4,4))
	   BOWA O 0 A_FireCustomMissile("IceArrow2", random(-5,5), 0, 11, 0)
	   BOWA O 0 A_FireCustomMissile("IceArrow2", random(-5,5), 0, 5, 0)
	   BOWA O 0 A_FireCustomMissile("IceArrow2", random(-5,5), 0, 8, 4)
	   BOWA O 0 A_FireCustomMissile("IceArrow2", random(-5,5), 0, 8, -4)
	   BOWA O 0 A_FireCustomMissile("IceArrow2", random(-5,5), 0, random(5,11), random(-4,4))
	   BOWA O 0 ACS_ExecuteAlways(998,0)
       BOWA P 25
	   BOWA G 4 A_TakeInventory("LightningCheck",2)
	   Goto Ready+1
	Flash:
	   BOWL A 0 A_JumpIfInventory("LightningCheck",1,"SFlash")
	   BLU5 ABC 2 bright
	   BLU5 A 0 A_SpawnItem("IceRadius",0 ,0, 0)
	   BLU5 D 1 bright
	   BLU5 A 0 A_SpawnItem("IceRadius",0 ,0, 0)
	   BLU5 A 0 A_JumpIf(health<1,"Goaway")
	   BLU5 E 0 bright A_SpawnItemEx("miniicespike",random(-80,80),random(-80,80),0,0,0,0,0)
	   BLU5 E 2 bright A_SpawnItemEx("miniicespike",random(-80,80),random(-80,80),0,0,0,0,0)
	   BLU5 A 0 A_SpawnItem("IceRadius",0 ,0, 0)
	   BLU5 A 0 A_JumpIf(health<1,"Goaway")
	   BLU5 F 0 bright A_SpawnItemEx("miniicespike",random(-80,80),random(-80,80),0,0,0,0,0)
	   BLU5 F 2 bright A_SpawnItemEx("miniicespike",random(-80,80),random(-80,80),0,0,0,0,0)
	   BLU5 A 0 A_SpawnItem("IceRadius",0 ,0, 0)
	   BLU5 A 0 A_JumpIf(health<1,"Goaway")
	   BLU5 E 0 bright A_SpawnItemEx("miniicespike",random(-80,80),random(-80,80),0,0,0,0,0)
	   BLU5 E 2 bright A_SpawnItemEx("miniicespike",random(-80,80),random(-80,80),0,0,0,0,0)
	   BLU5 A 0 A_SpawnItem("IceRadius",0 ,0, 0)
	   BLU5 A 0 A_JumpIf(health<1,"Goaway")
	   BLU5 F 0 bright A_SpawnItemEx("miniicespike",random(-80,80),random(-80,80),0,0,0,0,0)
	   BLU5 F 2 bright A_SpawnItemEx("miniicespike",random(-80,80),random(-80,80),0,0,0,0,0)
	   BLU5 A 0 A_SpawnItem("IceRadius",0 ,0, 0)
	   BLU5 A 0 A_JumpIf(health<1,"Goaway")
	   BLU5 E 0 bright A_SpawnItemEx("miniicespike",random(-80,80),random(-80,80),0,0,0,0,0)
	   BLU5 E 2 bright A_SpawnItemEx("miniicespike",random(-80,80),random(-80,80),0,0,0,0,0)
	   BLU5 A 0 A_SpawnItem("IceRadius",0 ,0, 0)
	   BLU5 A 0 A_JumpIf(health<1,"Goaway")
	   BLU5 F 0 bright A_SpawnItemEx("miniicespike",random(-80,80),random(-80,80),0,0,0,0,0)
	   BLU5 F 2 bright A_SpawnItemEx("miniicespike",random(-80,80),random(-80,80),0,0,0,0,0)
	   BLU5 A 0 A_SpawnItem("IceRadius",0 ,0, 0)
	   BLU5 A 0 A_JumpIf(health<1,"Goaway")
	   BLU5 E 0 bright A_SpawnItemEx("miniicespike",random(-80,80),random(-80,80),0,0,0,0,0)
	   BLU5 E 2 bright A_SpawnItemEx("miniicespike",random(-80,80),random(-80,80),0,0,0,0,0)
	   BLU5 A 0 A_SpawnItem("IceRadius",0 ,0, 0)
	   BLU5 A 0 A_JumpIf(health<1,"Goaway")
	   BLU5 F 0 bright A_SpawnItemEx("miniicespike",random(-80,80),random(-80,80),0,0,0,0,0)
	   BLU5 F 2 bright A_SpawnItemEx("miniicespike",random(-80,80),random(-80,80),0,0,0,0,0)
	   BLU5 A 0 A_SpawnItem("IceRadius",0 ,0, 0)
	   BLU5 A 0 A_JumpIf(health<1,"Goaway")
	   BLU5 E 0 bright A_SpawnItemEx("miniicespike",random(-80,80),random(-80,80),0,0,0,0,0)
	   BLU5 E 2 bright A_SpawnItemEx("miniicespike",random(-80,80),random(-80,80),0,0,0,0,0)
	   BLU5 A 0 A_SpawnItem("IceRadius",0 ,0, 0)
	   BLU5 A 0 A_JumpIf(health<1,"Goaway")
	   BLU5 F 0 bright A_SpawnItemEx("miniicespike",random(-80,80),random(-80,80),0,0,0,0,0)
	   BLU5 F 2 bright A_SpawnItemEx("miniicespike",random(-80,80),random(-80,80),0,0,0,0,0)
	   BLU5 CBA 1 bright
	   Stop
	SFlash:
	   BOWL D 1 bright
	   BOWL A 0 A_JumpIfInventory("LightningCheck",2,"Goaway")
	   BOWL D 1 bright
	   BOWL A 0 A_JumpIfInventory("LightningCheck",2,"Goaway")
	   BOWL E 1 bright
	   BOWL A 0 A_JumpIfInventory("LightningCheck",2,"Goaway")
	   BOWL E 1 bright
	   BOWL A 0 A_JumpIfInventory("LightningCheck",2,"Goaway")
	   BOWL F 1 bright
	   BOWL A 0 A_JumpIfInventory("LightningCheck",2,"Goaway")
	   BOWL F 1 bright
	   BOWL A 0 A_JumpIfInventory("LightningCheck",2,"Goaway")
	   loop
	Goaway:
	   TNT1 A 0
	   stop
	NoArrows:
	   BOWA H 28 A_PlayWeaponSound("weapons/arrowno")
	   Goto Ready+1
	Altfire:
	   BOWA GFE 4
	   BOWA E 45 A_GunFlash
	   BOWA EFG 6
	   BOWA H 8 
	   BOWA H 1 A_WeaponReady
	   Goto Ready+1
}
}

ACTOR IceArrow
{ 
   Radius 3 
   Height 2 
   Speed 28
   decal icehit
   Scale .5
   Damage (8)
   +DONTBLAST
   PROJECTILE 
   damagetype "AltIce2"
   renderstyle add
   alpha 0.8
   -NOGRAVITY 
   gravity 0.1
   +NOEXTREMEDEATH
   +SKYEXPLODE
   renderstyle translucent
   alpha 1.0
   SeeSound "weapons/icearrow"
   DeathSound "weapons/arrowshatter"
   States 
   { 
   Spawn: 
      SHRD ABC 2 bright A_SpawnItemEx("Icearrowtrail",-4,0,0,0,0,0,0,128) 
	  Loop
   XDeath:
	  ARRW A 0 A_GiveToTarget("HitBeep",1)
      Goto Death
   Death: 
      ARRW A 0 A_SpawnItemEx("Arrowdropped",0,0,0,0,0,0,0,32,0) 
	  ARRW A 0 A_SpawnItemEx("HunterFreezeSlow",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
      SHEX ABCDEFGHIJ 2 bright A_FadeOut(0.05)
      Stop 
   } 
} 

actor IceArrow2 : IceArrow
{
   Speed 28
   Damage (8)
   States 
   { 
	Spawn: 
      SHRD A 0
	  SHRD A 0 ThrustThingZ(0,random(0,5),random(0,1),1)
      SHRD ABC 2 bright A_SpawnItemEx("Icearrowtrail",-4,0,0,0,0,0,0,128) 
	  Goto Spawn+2
   XDeath:
	  SHEX A 0 A_GiveToTarget("HitBeep",1)
      Goto Death
   Death: 
      SHEX A 0 A_SpawnItemEx("HunterFreezeSlow",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
      SHEX ABCDEFGHIJ 2 bright A_FadeOut(0.05)
      Stop 
   } 
}

actor miniicespike
{
PROJECTILE
+FLOORHUGGER
+THRUGHOST
Obituary "%o tripped on %k's ice spikes."
speed 0
Damage 5
Damagetype "AltIce2"
radius 3
height 5
deathsound "weapons/arrowshatter"
States
{
Spawn:
ICEP N 0
ICEP N 0 A_PlaySound("weapons/icespike")
ICEP N 0 A_ChangeFlag("NOBLOCKMAP", 0)
ICEP NMLKJIHGFEDCB 1
ICEP A 85 A_ChangeFlag("NOBLOCKMAP", 1)
ICEP N 0 A_ChangeFlag("NOBLOCKMAP", 0)
ICEP BCDEFGHIJKLMN 1
stop
XDeath:
SGEX A 0 A_GiveToTarget("HitBeep",1)
Goto Death
Death:
SGEX A 0
SHEX ABCDEFGHIJ 2 bright A_FadeOut(0.05)
stop
}
}

actor LightningBow : Bow
{
+WEAPON.NOAUTOAIM
Weapon.SlotNumber 4
Obituary "%o was electrocuted by %k's lightning arrows." 
decal "LightningDecal"
inventory.icon "LBOW"
States
{
    Spawn: 
       BOWP A 400
       Stop 
    Ready: 
	   BOWA A 0 A_PlaySoundEx("weapons/bowlswitch", "Weapon")
	   BOWA H 1 A_WeaponReady 
       Goto Ready+1
    Deselect: 
       BOWA H 1 A_Lower
	   Loop
    Select: 
       BOWA H 1 A_Raise
       Loop
    Fire:   
	   BOWA H 0 A_JumpIfNoAmmo("NoArrows")
	   BOWA H 0 ACS_ExecuteAlways(999,0)
       BOWA HIJKL 7
	   BOWA L 0 A_Playsound("BWFI6",CHAN_ITEM)
	   BOWA L 2 A_PlaySoundEx ("weapons/bowdraw", "SoundSlot7")
	   BOWA A 0 A_GiveInventory("LightningCheck",1)
	   BOWA A 0 A_GunFlash
	Goto Hold
	   Hold:
	   BOWA M 1 bright 
	   BOWL A 0 A_Refire
	   BOWL A 0 A_GiveInventory("LightningCheck",1)
	   BOWA O 0 A_StopSoundEx("SoundSlot7")
	   BOWA H 0 A_Light0
	   BOWA O 0 A_FireCustomMissile("LightningArrow", 0, 1, 8, 0)
	   BOWA O 0 A_RailAttack(50, 8, 0, "none", "gold", 0, 9999, "RailPuff") 
	   BOWA O 0 ACS_ExecuteAlways(998,0)
       BOWA P 18//28//17 - Makes it less spammy and more dangerous to use on close range.
	   BOWA G 4 A_TakeInventory("LightningCheck",2)
	   Goto Ready+1
	Flash:
	   YEL5 A 0 A_JumpIfInventory("LightningCheck",1,"SFlash")
	   YEL5 ABC 1 bright
	   YEL5 D 2 bright
	   YEL5 A 0 A_PlaySoundEx("weapons/lightfall","Weapon")
	   YEL5 A 0 A_SpawnItemEx("LightningSpawner",120,0,9999,0,0,0,0,SXF_NOCHECKPOSITION)
	   YEL5 A 0 A_SpawnItemEx("LightningSpawner",-120,0,9999,0,0,0,0,SXF_NOCHECKPOSITION)
	   YEL5 A 0 A_SpawnItemEx("LightningSpawner",0,120,9999,0,0,0,0,SXF_NOCHECKPOSITION)
	   YEL5 A 0 A_SpawnItemEx("LightningSpawner",0,-120,9999,0,0,0,0,SXF_NOCHECKPOSITION)
	   YEL5 EF 2 bright
	   YEL5 EF 2 bright 
	   YEL5 CBA 1 bright
	   Stop
	SFlash:
	   BOWL A 1 bright
	   BOWL A 0 A_JumpIfInventory("LightningCheck",2,"Goaway")
	   BOWL A 1 bright
	   BOWL A 0 A_JumpIfInventory("LightningCheck",2,"Goaway")
	   BOWL B 1 bright
	   BOWL A 0 A_JumpIfInventory("LightningCheck",2,"Goaway")
	   BOWL B 1 bright
	   BOWL A 0 A_JumpIfInventory("LightningCheck",2,"Goaway")
	   BOWL C 1 bright
	   BOWL A 0 A_JumpIfInventory("LightningCheck",2,"Goaway")
	   BOWL C 1 bright
	   BOWL A 0 A_JumpIfInventory("LightningCheck",2,"Goaway")
	   loop
	Goaway:
	   TNT1 A 0
	   stop
	NoArrows:
	   BOWA H 28 A_PlayWeaponSound("weapons/arrowno")
	   Goto Ready+1
	   Altfire:
	   BOWA GFE 4
	   BOWA E 25 A_GunFlash
	   BOWA EFG 6
	   BOWA H 8
	   BOWA H 1 A_WeaponReady 
	   Goto Ready+1
}
}

actor LightningFall
{
PROJECTILE
damage 3
Obituary "%o was electrocuted %k's lightning magic." 
radius 8
+RANDOMIZE
+SEEKERMISSILE
height 8
renderstyle add
translation "192:207=229:231"
alpha 0.8
States
{
Spawn:
ZAP6 MNO 2 bright
loop
Death: 
TNT1 A 0 A_ChangeFlag("NOINTERACTION",1)
TNT1 A 0 A_Stop
TNT1 A 0 A_SeekerMissile(0,0,SMF_LOOK|SMF_CURSPEED,256)
TNT1 A 0 A_JumpIfTargetInLOS("SplashBeep",360,JLOSF_PROJECTILE,211)
TNT1 A 0 A_Jump(256,"DeathCont")
Goto DeathCont
XDeath:
TNT1 A 0 A_GiveToTarget("HitBeep",1)
TNT1 A 0 A_Jump(256,"DeathCont")
Goto DeathCont
SplashBeep:
TNT1 A 0 A_GiveToTarget("HitBeep",1)
TNT1 A 0 A_Jump(256,"DeathCont")
Goto DeathCont
DeathCont:
FX16 A 0 A_PlaySound("weapons/lighthit")
FX16 A 0 A_Explode(12,150,0)
FX16 GHIJK 2
stop
}
}

actor BotBow : Bow //The bow made for bots so they play a bit better.
{
Weapon.AmmoGive1 0
    States 
    { 
    Spawn: 
       BOWP A 400
       Stop 
    Ready: 
       BOWA H 0 ACS_ExecuteAlways(998,0)
	   BOWA H 0 A_TakeInventory("BotAttack",255)
	   BOWA H 1 A_WeaponReady 
       Goto Ready+1
    Deselect: 
       BOWA H 1 A_Lower
	   Loop
    Select: 
       BOWA H 1 A_Raise
       Loop
    Fire:
	   BOWA H 0 A_GiveInventory("BotAttack",1)
	   BOWA H 0 ACS_ExecuteAlways(519,0)
       BOWA HIJKL 4//3
	   BOWA L 2 A_Playsound("weapons/bowdraw")
	Goto Hold
	Hold:
	   BOWA M 0 A_JumpIfInventory("Huntermagic", 3, "Hold.Lightning")
	   BOWA M 0 A_JumpIfInventory("Huntermagic", 2, "Hold.Ice")
	   BOWA M 0 A_JumpIfInventory("Huntermagic", 1, "Hold.Fire")
       BOWA M 1
	   BOWA O 0 A_FireCustomMissile("ArrowFire", 0, 1, 8, 0)
	   BOWA O 0 A_GunFlash
       BOWA P 12
	   BOWA G 4 ACS_ExecuteAlways(998,0)
       Goto Ready     
	   Flash:
	   TNT1 A 19
	   Stop
	Hold.Fire:
	   BOWF D 0 A_Playweaponsound("weapons/bowonfire")
	   BOWA H 0 ACS_ExecuteAlways(999,0)
	   //BOWF DEC 3 bright offset (0, 32) 
	   BOWA MMM 3 bright offset (0, 32)
	   BOWA H 0 A_Light0
	   BOWA O 0 A_FireCustomMissile("FlameArrow", 0, 1, 8, 0)
	   BOWA O 0 ACS_ExecuteAlways(998,0)
       BOWA P 12 
	   BOWA G 4
	   Goto Ready
	Hold.Ice:
	   BOWI A 0 A_Playweaponsound("weapons/bowfreezing")
	   BOWA H 0 ACS_ExecuteAlways(999,0)
	   //BOWI ABC 2 bright offset (0, 32) 
	   BOWA MMM 2 bright offset (0, 32)
	   BOWA H 0 A_Light0
	   BOWA O 0 A_FireCustomMissile("IceArrow", 0, 1, 8, 0)
	   BOWA O 0 A_FireCustomMissile("IceArrow2", random(-4,4), 0, 8, 0)
	   BOWA O 0 A_FireCustomMissile("IceArrow2", random(-4,4), 0, 8, 0)
	   BOWA O 0 A_FireCustomMissile("IceArrow2", random(-4,4), 0, 8, 0)
	   BOWA O 0 A_FireCustomMissile("IceArrow2", random(-4,4), 0, 8, 0)
	   BOWA O 0 A_FireCustomMissile("IceArrow2", random(-4,4), 0, 8, 0)
	   BOWA O 0 ACS_ExecuteAlways(998,0)
       BOWA P 16//13//7//2
	   BOWA G 2
	   Goto Ready
	Hold.Lightning:
	   //BOWL CBA 2 bright offset (0, 32)
	   BOWA MMM 2 bright offset (0, 32)
	   BOWA H 0 A_Light0
	   //BOWA O 0 A_FireCustomMissile("LightningArrow", 0, 1, 8, 0)
	   BOWA O 0 A_PlayWeaponSound("weapons/lightningarrow")
	   BOWA O 0 A_FireCustomMissile("NewLightningArrow", 0, 1, 8, 0)
	   //BOWA O 0 A_RailAttack(50, 8, 0, "none", "yellow", 0, 999) 
	   BOWA O 0 ACS_ExecuteAlways(998,0)
       BOWA P 25//32//22
	   BOWA G 4
	   Goto Ready
    } 
}

actor SuperBotBow : Bow
{
Weapon.AmmoGive1 0
    States 
    { 
    Spawn: 
       BOWP A 400
       Stop 
    Ready: 
       BOWA H 0 ACS_ExecuteAlways(998,0)
	   BOWA H 0 A_TakeInventory("BotAttack",255)
	   BOWA H 1 A_WeaponReady 
       Goto Ready+1
    Deselect: 
       BOWA H 1 A_Lower
	   Loop
    Select: 
       BOWA H 1 A_Raise
       Loop
    Fire:
	   BOWA A 0 A_GiveInventory("BotAttack",1)
	   BOWA A 0 A_Jump(23, "ArrowBurst")
       BOWA HIJKL 3
	   BOWA H 0 ACS_ExecuteAlways(999,0)
	   BOWA L 2 A_Playsound("weapons/bowdraw")
	Goto Hold
	Hold:
	   BOWA M 0 A_JumpIfInventory("Huntermagic", 3, "Hold.Lightning")
	   BOWA M 0 A_JumpIfInventory("Huntermagic", 2, "Hold.Ice")
	   BOWA M 0 A_JumpIfInventory("Huntermagic", 1, "Hold.Fire")
       BOWA M 1
	   BOWA O 0 A_FireCustomMissile("ArrowFire", 0, 1, 8, 0)
	   BOWA O 0 A_GunFlash
       BOWA P 12
	   BOWA G 4 ACS_ExecuteAlways(998,0)
       Goto Ready     
	   Flash:
	   TNT1 A 19
	   Stop
	Hold.Fire:
	   BOWF D 0 A_Playweaponsound("weapons/bowonfire")
	   //BOWF DEC 3 bright offset (0, 32) 
	   BOWA MMM 3 bright offset (0, 32)
	   BOWA H 0 A_Light0
	   BOWA O 0 A_FireCustomMissile("FlameArrow", 0, 1, 8, 0)
	   BOWA O 0 ACS_ExecuteAlways(998,0)
       BOWA P 12 
	   BOWA G 4
	   Goto Ready
	Hold.Ice:
	   BOWI A 0 A_Playweaponsound("weapons/bowfreezing")
	   //BOWI ABC 2 bright offset (0, 32) 
	   BOWA MMM 2 bright offset (0, 32)
	   BOWA H 0 A_Light0
	   BOWA O 0 A_FireCustomMissile("IceArrow", 0, 1, 8, 0)
	   BOWA O 0 A_FireCustomMissile("IceArrow2", random(-4,4), 0, 8, 0)
	   BOWA O 0 A_FireCustomMissile("IceArrow2", random(-4,4), 0, 8, 0)
	   BOWA O 0 A_FireCustomMissile("IceArrow2", random(-4,4), 0, 8, 0)
	   BOWA O 0 A_FireCustomMissile("IceArrow2", random(-4,4), 0, 8, 0)
	   BOWA O 0 A_FireCustomMissile("IceArrow2", random(-4,4), 0, 8, 0)
	   BOWA O 0 ACS_ExecuteAlways(998,0)
       BOWA P 16//13//7//2
	   BOWA G 2
	   Goto Ready
	Hold.Lightning:
	   //BOWL CBA 2 bright offset (0, 32) 
	   BOWA MMM 2 bright offset (0, 32)
	   BOWA H 0 A_Light0
	   //BOWA O 0 A_FireCustomMissile("LightningArrow", 0, 1, 8, 0)
	   BOWA O 0 A_PlayWeaponSound("weapons/lightningarrow")
	   BOWA O 0 A_FireCustomMissile("NewLightningArrow", 0, 1, 8, 0)
	   //BOWA O 0 A_RailAttack(50, 8, 0, "none", "yellow", 0, 999) 
	   BOWA O 0 ACS_ExecuteAlways(998,0)
       BOWA P 25//32//22
	   BOWA G 4
	   Goto Ready
	ArrowBurst:
	   BOWA A 0 A_JumpIfInventory("BurstCooldown", 1, "Ready")
	   BOWA HIJKL 7//2//3
	   BOWA H 0 ACS_ExecuteAlways(999,0)
	   BOWA L 4 A_Playsound("weapons/bowdraw")//2
	   BOWA M 1
	   BOWA O 0 A_FireCustomMissile("ArrowFire", 0, 1, 8, 0)
	   BOWA P 3
	   BOWA O 0 A_FireCustomMissile("ArrowFire", random(-4,4), 0, 8, 0)
	   BOWA P 3
	   BOWA O 0 A_FireCustomMissile("ArrowFire", random(-4,4), 0, 8, 0)
	   BOWA P 3
	   BOWA O 0 A_FireCustomMissile("ArrowFire", random(-4,4), 0, 8, 0)
	   BOWA P 3
	   BOWA O 0 A_FireCustomMissile("ArrowFire", random(-4,4), 0, 8, 0)
	   BOWA P 3
	   BOWA O 0 A_FireCustomMissile("ArrowFire", random(-4,4), 0, 8, 0)
	   BOWA P 3
	   BOWA O 0 A_FireCustomMissile("ArrowFire", random(-4,4), 0, 8, 0)
	   BOWA P 3
	   BOWA O 0 A_FireCustomMissile("ArrowFire", random(-4,4), 0, 8, 0)
	   BOWA P 3
	   BOWA O 0 A_FireCustomMissile("ArrowFire", random(-4,4), 0, 8, 0)
	   BOWA P 3
	   BOWA O 0 A_FireCustomMissile("ArrowFire", random(-4,4), 0, 8, 0)
	   BOWA P 3
	   BOWA O 0 A_FireCustomMissile("ArrowFire", random(-4,4), 0, 8, 0)
	   BOWA P 3
	   BOWA O 0 A_FireCustomMissile("ArrowFire", random(-4,4), 0, 8, 0)
	   BOWA O 0 A_GunFlash
       BOWA P 12
	   BOWA G 4 ACS_ExecuteAlways(998,0)
	   BOWA A 0 A_GiveInventory("BurstCooldown",1)
	   Goto Ready
    } 
}

actor IceRadius : FireRadius
{
+NOINTERACTION
+CLIENTSIDEONLY
States
{
Spawn:
TNT1 A 0
TNT1 A 1// A_Explode(60,152,0)
TNT1 BCDE 1
Stop
}
}

actor LightningRadius : FireRadius
{
states
{
Spawn:
TNT1 A 0
TNT1 A 0
TNT1 A 1 A_Explode(15,152,0)
Stop
}
}

actor LightningFall4 : LightningFall
{
damage 3//3
Obituary "%o was electrocuted %k's lightning magic." 
Scale 0.8
Alpha 0.7//0.8
States
{
Death:
FX16 A 0 A_PlaySound("weapons/lighthit")
FX16 A 0 A_Explode(9,110,0)//12,125,0
FX16 GHIJK 2
stop
}
}

actor LightningFall3 : LightningFall
{
damage 2//3
Obituary "%o was electrocuted %k's lightning magic." 
Scale 0.7
Alpha 0.6//0.8
States
{
Death:
FX16 A 0 A_PlaySound("weapons/lighthit")
FX16 A 0 A_Explode(6,100,0)//12,125,0
FX16 GHIJK 2
stop
}
}

actor LightningFall2 : LightningFall
{
damage 1//3
Obituary "%o was electrocuted %k's lightning magic." 
Scale 0.6
Alpha 0.5//0.8
States
{
Death:
FX16 A 0 A_PlaySound("weapons/lighthit")
FX16 A 0 A_Explode(3,90,0)//12,125,0
FX16 GHIJK 2
stop
}
}

actor LightningFall1 : LightningFall
{
damage 1//3
Obituary "%o was electrocuted %k's lightning magic." 
Scale 0.5
Alpha 0.5//0.8
States
{
Death:
FX16 A 0 A_PlaySound("weapons/lighthit")
FX16 A 0 A_Explode(3,75,0)//12,125,0
FX16 GHIJK 2
stop
}
}

actor FireSpinAttack
{
-SOLID
+NOGRAVITY
+NOINTERACTION
+CLIENTSIDEONLY
renderstyle add
alpha 0.9
States
{
Spawn:
HLFR ABCDEFGH 1 bright 
stop
}
}

actor LightningSpawner
{
+SKYEXPLODE
PROJECTILE
-SOLID
+NOGRAVITY
+CEILINGHUGGER
radius 1
height 8
speed 0
States
{
Spawn:
Death:
TNT1 AAAAA 3 A_SpawnItemEx("LightningFall",1,0,-1,0,0,-20)
stop
}
}

actor LightningCheck : Inventory
{
Inventory.amount 2
inventory.maxamount 2
States
{
Spawn:
TNT1 A 1
Stop
}
}

ACTOR LightningArrow : FastProjectile
{
PROJECTILE
damage 0
+RIPPER
height 5
radius 5
+NOBLOOD
speed 500
States
{
Spawn:
TNT1 A 1
Loop
Death:
TNT1 A 0 A_JumpIfInventory("Clip",1,"goaway")
TNT1 A 0 A_GiveInventory("Clip",1)
TNT1 A 1 A_SpawnItemEx("Arrowdropped",0,0,0,0,0,0,0,32,0) 
Stop
goaway:
TNT1 A 0
stop
}
}

ACTOR Flamearrowtrail
{
- SOLID
+NOGRAVITY
+CLIENTSIDEONLY
alpha 0.7
renderstyle add
States
{
Spawn:
WBAL CDE 4 bright
Stop
}
}

ACTOR Icearrowtrail
{
- SOLID
+NOGRAVITY
+CLIENTSIDEONLY
alpha 0.9
renderstyle add
scale 0.3
States
{
Spawn:
CRYT ABCD 4 bright
Stop
}
}

actor HunterMagic : Inventory
{
inventory.amount 1
inventory.maxamount 5
}

ACTOR ArrowSingle : Ammo 9902
{ 
   Inventory.Amount 1
   Inventory.MaxAmount 65//50
   Ammo.BackpackAmount 1
   Ammo.BackpackMaxAmount 65//50
   Inventory.PickupMessage "You picked an Arrow" 
   Inventory.Icon ARRWA3A7 
   +INVENTORY.IGNORESKILL
   Scale .5
   Radius 14//2
   Height 20//14//2
   States 
   { 
   Spawn: 
      ARRW A 700
      Stop
   } 
}

ACTOR Arrowdropped2 : CustomInventory//Stays longer on the ground, normal arrows only.
{ 
   Inventory.PickupMessage "You picked up an Arrow" 
   Inventory.PickupSound "misc/a_pkup"
   +INVENTORY.IGNORESKILL
   Scale .5
   Radius 14//8
   Height 20//14//2 
   States 
   { 
   Spawn: 
	ARRW A 1500//800
	Stop
	Pickup:
    TNT1 A 0 A_JumpIfInventory("Bow", 1, 1)
    Fail
    TNT1 A 0 A_GiveInventory("ArrowSingle", 1)
    Stop
   } 
}

actor BurstCooldown : PowerDamage
{
damagefactor "nothing", 1.0
powerup.duration 50
}

actor LightningPower : Inventory
{
inventory.amount 1
inventory.maxamount 4
States
{
Spawn:
TNT1 A 1
loop
}
}

ACTOR NewLightningArrow : FastProjectile
{ 
   PROJECTILE
   +ROCKETTRAIL
   +NOEXTREMEDEATH
   +PIERCEARMOR
   +SKYEXPLODE
   +BRIGHT
   Radius 4
   Height 3
   Speed 120//120
   Scale 0.5
   Damage (20)
   damagetype "Lightning"
   SeeSound ""
   DeathSound "weapons/bowhit"
   decal "LightningDecal"
   States 
   {
   Spawn:
	  ARRW AAA 1 A_SpawnItemEx("LightningArrowTrail",-1,0,0,0,0,0,0,0)//3
	  ARRW A 0 A_GiveToTarget("LightningPower", 1)
	  //ARRW A 0 A_SpawnItemEx("LightningArrowTrailBig",-1,0,0,0,0,0,0,0)
	  Loop
   Death://Hit a wall/floor/ceiling.
      ARRW A 0 A_JumpIf(z-ceilingz>=0-6, "Ceiling")//Kinda borrowed and modified from MM8BDM's Crash Bomb.
      ARRW A 0 A_ChangeFlag("BRIGHT", 0)
	  ARRW A 0 A_SpawnItemEx("LightningArrowTrailBig",0,0,0,0,0,0,0,0)
	  ARRW A 2 A_SpawnItemEx("Arrowdropped",0,0,0,0,0,0,0,32,0)
	  ARRW A 0 A_TakeFromTarget("LightningPower", 255)
      Stop
   XDeath://Hit a bleeding-capable actor.
      ARRW A 0 A_ChangeFlag("BRIGHT", 0)
	  ARRW A 0 A_SpawnItemEx("LightningArrowTrailBig",0,0,0,0,0,0,0,0)
	  ARRW A 0 A_JumpIfInTargetInventory("LightningPower", 4, "ExtraDamage4")
	  ARRW A 0 A_JumpIfInTargetInventory("LightningPower", 3, "ExtraDamage3")
	  ARRW A 0 A_JumpIfInTargetInventory("LightningPower", 2, "ExtraDamage2")
	  ARRW A 0 A_JumpIfInTargetInventory("LightningPower", 1, "ExtraDamage1")
	  ARRW A 2 A_SpawnItemEx("Arrowdropped",0,0,0,0,0,0,0,32,0)
	  ARRW A 0 A_TakeFromTarget("LightningPower", 255)
      Stop
   Crash://Hit a non-bleeding actor.
      ARRW A 0 A_ChangeFlag("BRIGHT", 0)
	  ARRW A 0 A_SpawnItemEx("LightningArrowTrailBig",0,0,0,0,0,0,0,0)
	  ARRW A 0 A_JumpIfInTargetInventory("LightningPower", 4, "ExtraDamage4")
	  ARRW A 0 A_JumpIfInTargetInventory("LightningPower", 3, "ExtraDamage3")
	  ARRW A 0 A_JumpIfInTargetInventory("LightningPower", 2, "ExtraDamage2")
	  ARRW A 0 A_JumpIfInTargetInventory("LightningPower", 1, "ExtraDamage1")
	  ARRW A 2 A_SpawnItemEx("Arrowdropped",0,0,0,0,0,0,0,32,0)
	  ARRW A 0 A_TakeFromTarget("LightningPower", 255)
      Stop
   ExtraDamage1://+10 Damage - Add extra damage as the projectile goes further.
      ARRW A 0 A_CustomMissile ("LightningExtra10", 0, 0, 0/*Angle*/, CMF_AIMDIRECTION|CMF_TRACKOWNER, 0/*Angle Pitch*/)
	  ARRW A 1 A_SpawnItemEx("Arrowdropped",0,0,0,0,0,0,0,32,0)
	  ARRW A 0 A_TakeFromTarget("LightningPower", 255)
	  Stop
   ExtraDamage2://+20
      ARRW A 0 A_CustomMissile ("LightningExtra20", 0, 0, 0, CMF_AIMDIRECTION|CMF_TRACKOWNER, 0)
	  ARRW A 1 A_SpawnItemEx("Arrowdropped",0,0,0,0,0,0,0,32,0)
	  ARRW A 0 A_TakeFromTarget("LightningPower", 255)
	  Stop
   ExtraDamage3://+30
      ARRW A 0 A_CustomMissile ("LightningExtra30", 0, 0, 0, CMF_AIMDIRECTION|CMF_TRACKOWNER, 0)
	  ARRW A 1 A_SpawnItemEx("Arrowdropped",0,0,0,0,0,0,0,32,0)
	  ARRW A 0 A_TakeFromTarget("LightningPower", 255)
	  Stop
   ExtraDamage4://+40
      ARRW A 0 A_CustomMissile ("LightningExtra40", 0, 0, 0, CMF_AIMDIRECTION|CMF_TRACKOWNER, 0)
	  ARRW A 1 A_SpawnItemEx("Arrowdropped",0,0,0,0,0,0,0,32,0)
	  ARRW A 0 A_TakeFromTarget("LightningPower", 255)
	  Stop
   Ceiling:
      ARRW A 0 A_ChangeFlag("BRIGHT", 0)
	  ARRW A 0 A_SpawnItemEx("LightningArrowTrailBig",0,0,0,0,0,0,0,0)
	  ARRW A 0 A_JumpIfInTargetInventory("LightningPower", 4, "Lightning4")
	  ARRW A 0 A_JumpIfInTargetInventory("LightningPower", 3, "Lightning3")
	  ARRW A 0 A_JumpIfInTargetInventory("LightningPower", 2, "Lightning2")
	  ARRW A 0 A_JumpIfInTargetInventory("LightningPower", 1, "Lightning1")
      //ARRW A 0 A_SpawnItemEx("LightningSpawner",0,0,9999,0,0,-1,0,SXF_NOCHECKPOSITION)
	  ARRW A 1 A_SpawnItemEx("Arrowdropped",0,0,0,0,0,0,0,32,0)
	  ARRW A 0 A_TakeFromTarget("LightningPower", 255)
	  Stop
   Lightning1:
      ARRW A 0 A_SpawnItemEx("LightningSpawner1",0,0,9999,0,0,0,0,SXF_NOCHECKPOSITION)
      ARRW A 1 A_SpawnItemEx("Arrowdropped",0,0,0,0,0,0,0,32,0)
	  ARRW A 0 A_TakeFromTarget("LightningPower", 255)
	  Stop
   Lightning2:
      ARRW A 0 A_SpawnItemEx("LightningSpawner2",0,0,9999,0,0,0,0,SXF_NOCHECKPOSITION)
      ARRW A 1 A_SpawnItemEx("Arrowdropped",0,0,0,0,0,0,0,32,0)
	  ARRW A 0 A_TakeFromTarget("LightningPower", 255)
	  Stop
   Lightning3:
      ARRW A 0 A_SpawnItemEx("LightningSpawner3",0,0,9999,0,0,0,0,SXF_NOCHECKPOSITION)
      ARRW A 1 A_SpawnItemEx("Arrowdropped",0,0,0,0,0,0,0,32,0)
	  ARRW A 0 A_TakeFromTarget("LightningPower", 255)
	  Stop
   Lightning4:
      ARRW A 0 A_SpawnItemEx("LightningSpawner4",0,0,9999,0,0,0,0,SXF_NOCHECKPOSITION)
      ARRW A 1 A_SpawnItemEx("Arrowdropped",0,0,0,0,0,0,0,32,0)
	  ARRW A 0 A_TakeFromTarget("LightningPower", 255)
	  Stop
   }
}

ACTOR LightningExtra10 : FastProjectile
{  //Invisible extra projectile to deal extra damage on lightning impact at long ranges.
   PROJECTILE
   -ROCKETTRAIL
   +NOEXTREMEDEATH
   +PIERCEARMOR
   Radius 4
   Height 3
   Speed 120
   Damage (10)
   damagetype "Lightning"
   SeeSound ""
   DeathSound ""
   decal ""
   renderstyle none
   States
    {
    Spawn:
      TNT1 A 1
	  TNT1 A 0 A_Stop
	  Stop
    }
}
ACTOR LightningExtra20 : LightningExtra10
{ 
   Damage (20)
   damagetype "Lightning"
}
ACTOR LightningExtra30 : LightningExtra10
{ 
   Damage (30)
   damagetype "Lightning"
}
ACTOR LightningExtra40 : LightningExtra10
{ 
   Damage (40)
   damagetype "Lightning"
}

ACTOR LightningArrowTrail
{
-SOLID
+NOGRAVITY
+CLIENTSIDEONLY
+BRIGHT
alpha 0.4
renderstyle translucent
translation "192:207=229:231"
scale 0.2
States
{
Spawn:
FX16 GHIJK 4 bright
Stop
}
}

ACTOR LightningArrowTrailBig : LightningArrowTrail
{
scale 0.6
States
{
Spawn:
FX16 GHIJK 3 bright
Stop
}}

actor LightningSpawner4 : LightningSpawner
{
States
{
Spawn:
Death:
TNT1 AAAAA 3 A_SpawnItemEx("LightningFall4",1,0,-1,0,0,-20)
stop
}
}
//-----------
actor LightningSpawner3 : LightningSpawner
{
States
{
Spawn:
Death:
TNT1 AAAAA 3 A_SpawnItemEx("LightningFall3",1,0,-1,0,0,-20)
stop
}
}
//-----------
actor LightningSpawner2 : LightningSpawner
{
States
{
Spawn:
Death:
TNT1 AAAAA 3 A_SpawnItemEx("LightningFall2",1,0,-1,0,0,-20)
stop
}
}
//-----------
actor LightningSpawner1 : LightningSpawner
{
States
{
Spawn:
Death:
TNT1 AAAAA 3 A_SpawnItemEx("LightningFall1",1,0,-1,0,0,-20)
stop
}
}