Actor Caleb : PlayerPawn
{
	Speed 1
	Health 100
	Player.Maxhealth 100
	Mass 700
	scale 0.85
	PainChance 256
	Player.ColorRange 112,127
	Player.DisplayName "Caleb"
	Player.SoundClass "Caleb"
	Player.ForwardMove 1.0
	Player.SideMove 1.0
	Player.StartItem "Revolver", 1
	Player.StartItem "Sawed-Off", 1 
	Player.StartItem "Dynamite", 1
	Player.StartItem "SawedOffShells", 60
	Player.StartItem "PistolRound", 6
	Player.StartItem "DynamiteAmmo", 6
	Player.StartItem "IsHuman", 1
	Player.StartItem "Screamer", 0
	Player.StartItem "SpecialAbility", 1
	Player.ScoreIcon "CALEBST"
	DamageFactor "Grenade", 0.3
	DamageFactor "CalebDynamite", 0.3
	Damagefactor "normal", 0.9
	DamageFactor "GhostTrap", 0.0
	Damagefactor "Sentinel", 0.0
	Damagefactor "MechPewPews", 0.0
	Damagefactor "MacheteSlicerino", 0.0
    Damagefactor "GasterSmokeHurt", 0.0
	Damagefactor "StrifeSuit", 0.0
	LimitedToTeam 0
	+NOICEDEATH
	+NODAMAGETHRUST
	+QUICKTORETALIATE
	+GHOST
	+NOSKIN
	States
	{
	Spawn:
		CALB E 0 A_JumpIfInventory("GloomWatchStack",100,"GloomDeath")
		CALB E 1 Setplayerproperty(0,0,0)
		Loop
	See:
		CALB A 0 A_JumpIfInventory("GloomWatchStack",100,"GloomDeath")
		CALB A 0 A_JumpIfHealthLower(50,"INeedHealingSee")
		CALB AB 5
		CALB A 0 A_SpawnItemEx("CalebStomp",0,0,0,0,0,-20,0,0,0) 
		CALB CD 5
		CALB A 0 A_SpawnItemEx("CalebStomp",0,0,0,0,0,-20,0,0,0) 
		Goto Spawn
	INeedHealingSee:
		CALB A 0 A_JumpIfInventory("GloomWatchStack",100,"GloomDeath")
		CALB A 0 A_SpawnItemEx("INeedHealingTrail",random(-20,20),random(-20,20),0,0,0,10)
		CALB AB 5
		CALB A 0 A_SpawnItemEx("CalebStomp",0,0,0,0,0,-20,0,0,0) 
		CALB CD 5
		CALB A 0 A_SpawnItemEx("CalebStomp",0,0,0,0,0,-20,0,0,0) 
		Goto Spawn
	Pain.TeleOtherPlant:
	CALB G 1 A_GiveInventory("TeleOtherPlanted",1)
	Goto Pain
	Pain.TeleOtherActivateDamage:
	CALB G 1 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)
	CALB 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)
	CALB G 1 A_PlaySound("Gibbage/XSplat")
	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_PlaySound("TeleOther/activate",CHAN_7,1)
	TNT1 A 0 A_SpawnItem("TeleOtherFog")
	TNT1 A 0 ACS_ExecuteAlways(466,0,2)
	TNT1 A 0 A_GiveToTarget("KilledMe",1)
	CALB G 1 A_PlaySound("Gibbage/XSplat")
	TNT1 A 0 A_PlaySound("TeleOther/activate",CHAN_6,1)
	TNT1 A 0 A_SpawnItem("TeleOtherFog")
	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
	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:
		CALB A 0 A_JumpIfInventory("GloomWatchStack",100,"GloomDeath")
		CALB G 4
		CALB G 4 A_Pain
		Goto See
	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 1 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)
	CALB G 20 Setplayerproperty(0,1,0)
	CALB 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)
	CALB G 20 Setplayerproperty(0,1,0)
	CALB 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)
	CALB G 20 Setplayerproperty(0,1,0)
	CALB 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:
    CALB G 0 A_Pain
	CALB G 0 A_GiveToTarget("health",5)
	CALB G 40 Setplayerproperty(0,1,0)
	CALB G 2 Setplayerproperty(0,0,0)
		Goto Spawn
	Missile:
		CALB A 0 A_JumpIfInventory("GloomWatchStack",100,"GloomDeath")
		CALB E 12
		Goto Spawn
	Melee:
		CALB A 0 A_JumpIfInventory("GloomWatchStack",100,"GloomDeath")
		CALB F 6 bright
		Goto Missile
	Death:
	DeathAnim:
		CALB A 0 A_GiveToTarget("KillBeep",1)
		CALB A 0 A_GiveInventory("ItemDeath",1)
		CALB A 0 A_TakeInventory("KilledCount",999)
		CALB A 0 A_GiveToTarget("KilledMe",1)
		CALB A 0 A_GiveToTarget("KilledCaleb",1)
		CALB H 6
		CALB I 6 A_PlayerScream
		CALB JK 6
		CALB L 6 A_NoBlocking
		CALB M 6
		CALB N -1
		Stop
	DeathAnimAlt:
		CALB A 0 A_GiveToTarget("KillIndicator",1)
		CALB A 0 A_GiveInventory("ItemDeath",1)
		CALB A 0 A_TakeInventory("KilledCount",999)
		CALB A 0 A_GiveToTarget("KilledMe",1)
		CALB A 0 A_GiveToTarget("KilledCaleb",1)
		CALB H 6
		CALB I 6 A_PlayerScream
		CALB JK 6
		CALB L 6 A_NoBlocking
		CALB M 6
		CALB 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.SjasScream:
	Death.FrostbiteWind:
	Death.EmtalicSaw:
	Death.LichFire:
		CALB A 0 A_GiveToTarget("KilledJ",1)
  		Goto DeathAnim
	Death.Creeper:
		CALB A 0 A_PlaySoundEx("CreeperAttack","Body")
		CALB A 0 A_SpawnItemEx("CreeperPopUp",0,0,10)
		TNT1 A 0 A_GiveToTarget("GhoulAmmo",1)
		CALB A 0 A_GiveToTarget("CreeperHeal",1)
		CALB A 0 ACS_ExecuteAlways(997,0,1)
		Goto DeathAnimAlt
	Death.CreepStun:
		CALB A 0 A_GiveToTarget("Unlock13",1)
		CALB A 0 A_GiveToTarget("CreepGotya",1)
		Goto DeathAnimAlt
	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:
		CALB A 0 A_GiveToTarget("KillBeep",1)
		CALB A 0 A_GiveInventory("ItemDeath",1)
		CALB A 0 A_GiveToTarget("KilledMe",1)
		CALB A 0 A_GiveToTarget("KilledCaleb",1)
		CALB A 0 A_GiveToTarget("Crunched",1)
		CALB G 1 A_PlaySound("Gibbage/XSplat")
		NULL A 0 A_SpawnItemEx("Custom_CalebBloodySkull", 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:
		CALB A 0 A_GiveToTarget("KillIndicator",1)
		CALB A 0 A_GiveInventory("ItemDeath",1)
		CALB A 0 A_GiveToTarget("KilledMe",1)
		CALB A 0 A_GiveToTarget("KilledCaleb",1)
		CALB A 0 A_GiveToTarget("Crunched",1)
		CALB G 1 A_PlaySound("Gibbage/XSplat")
		NULL A 0 A_SpawnItemEx("Custom_CalebBloodySkull", 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:
		CALB A 0 A_GiveToTarget("KilledR",1)
		CALB A 0 A_GiveToTarget("Health",100)
		CALB A 0 ACS_ExecuteAlways(997,0,2)
		CALB A 0 A_PlaySoundEx("RavagerAttack","Body")
		CALB A 0 A_SpawnItemEx("RavagerHit",0,0,32)
		Goto DeathAnimAlt
	Death.RavagerBall:
		CALB A 0 A_GiveToTarget("RavagerGotYa",1)
		CALB A 0 A_GiveToTarget("KilledJ",1)
		Goto DeathAnimAlt
	Death.Yurei:
		CALB A 0 A_GiveToTarget("KilledY",1)
		CALB A 0 A_PlaySoundEx("YureiKill1","Body",0,1)
		CALB A 0 ACS_ExecuteAlways(997,0,3)
		Goto DeathAnimAlt
	Death.YureiBall:
		CALB A 0 A_GiveToTarget("Health",10)
		CALB A 0 A_SpawnItemEx("BallFire")
		Goto Death.SjasScream
	Death.UboaRawrScream:
		Goto DeathAnimAlt
	Death.Misty:
	Death.Whiteface:
		CALB A 0 A_GiveToTarget("KillBeep",1)
		CALB A 0 A_GiveInventory("ItemDeath",1)
		CALB A 0 A_GiveToTarget("KilledMe",1)
		CALB A 0 A_GiveToTarget("KilledM",1)
		CALB HHHHHH 1 A_FadeOut(0.05)
		CALB A 0 A_PlayerScream
		CALB IIIIIIJJJJJJKK 2 A_FadeOut(0.05)
		CALB A 0 A_NoBlocking
		NULL A -1
		Stop
	Death.Clowny:
		CALB A 0 ACS_ExecuteAlways(997,0,4)
		CALB A 0 A_GiveToTarget("KilledC",1)
		CALB A 0 A_GiveToTarget("ClownyAmmo",5)
		Goto DeathAnim
	Death.Mohoph:
		CALB A 0 A_GiveToTarget("TransCaleb",1)
		TNT1 A 0 A_GiveToTarget("MorphAmmo", 1)
		CALB A 0 A_PlaySoundEx("MohophKill","Body")
		CALB A 0 ACS_ExecuteAlways(997,0,5)
		Goto DeathAnim
	Death.EmtalicWeak:
		CALB A 0 A_PlaySoundEx("RamSuccess","Body")
		Goto DeathAnim
	Death.Emtalic:
		CALB A 0  A_PlaySoundEx("RamSuccess","Body")
		Goto Death.Jitter
	Death.I1:
		CALB A 0 A_SpawnItemEx("Heart",0,0,32,random(2,3),momy,random(8,12),random(-180,180))
		CALB A 0 A_GiveToTarget("KilledI1",1)
		Goto DeathAnim
	Death.I2:
		CALB A 0 A_GiveToTarget("KillBeep",1)
		CALB A 0 A_GiveInventory("ItemDeath",1)
		CALB A 0 A_GiveToTarget("KilledMe",1)
		CALB A 0 A_GiveToTarget("KilledI2",1)
		CALB A 0 A_GiveToTarget("Clip",1)
		CALB G 0 SetPlayerProperty(0,1,4)
		CALB G 0 A_Stop
		CALB 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:
		CALB A 0 A_GiveToTarget("KillBeep",1)
		CALB A 0 A_GiveInventory("ItemDeath",1)
		CALB A 0 A_GiveToTarget("KilledMe",1)
		CALB A 0 A_GiveToTarget("KilledI3",1)
		CALB HHHHHH 1 A_SpawnItemEx("PainSmoke",0,random(-22,22),random(-22,22),random(2,4),momy,random(8,12),random(-180,180))
		CALB I 0 A_PlayerScream
		CALB IIIIII 1 A_SpawnItemEx("PainSmoke",0,random(-22,22),random(-22,22),random(2,4),momy,random(8,12),random(-180,180))
		CALB J 0 A_NoBlocking
		CALB JJJJJJKKKKKKLLLLLLMMMMMM 1 A_SpawnItemEx("PainSmoke",0,random(-22,22),random(-22,22),random(2,4),momy,random(8,12),random(-180,180))
		CALB NNNNNNN 3 A_SpawnItemEx("PainSmoke",0,random(-22,22),random(-22,22),random(2,4),momy,random(8,12),random(-180,180))
		CALB N -1
		Stop
	Death.I4:
		CALB A 0 A_GiveToTarget("KilledI4",1)
		Goto DeathAnim
	Death.I5:
		CALB A 0 A_GiveToTarget("KilledI5",1)
		Goto DeathAnim
	Pain.RavagerBall:
		CALB A 0 ACS_ExecuteAlways(920,0)
		Goto Pain
	Pain.YureiBall:
		CALB A 0 A_GiveToTarget("Health",10)
		CALB A 0 A_SpawnItemEx("BallFire")
		Goto Pain
	Pain.Emtalic:
		CALB A 0 A_PlaySoundEx("RamSuccess","Body")
		Goto Pain
	Pain.EmtalicWeak:
		CALB 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 CalebStomp : CyborgStomp
{
	DeathSound "CalebStep"
}

Actor DroppedAmmoBox
{
	Scale 0.3
	+DROPOFF
	States
	{
	Spawn:
		BBOX A 40
		BBOX A 0 A_SpawnItemEx("AmmoBox")
		Stop
	}
}

Actor AmmoBox : CustomInventory
{
	Inventory.PickupMessage "Picked up an ammo box."
	Inventory.PickupSound "ChicagoRaise"
	Inventory.Amount 1
	Inventory.MaxAmount 1
	Scale 0.3
	States
	{
	Spawn:
		BBOX A 525
		BBOX A 1 A_FadeOut(0.1)
		Goto Spawn+1
	Pickup:
		TNT1 A 1 A_JumpIfInventory("IsHuman",1,"Refill")
		Fail
	Refill:
		TNT1 A 0 ACS_ExecuteAlways(378,0)
		Stop
	}
}

Actor Sawed-Off : Weapon
{
	Weapon.SelectionOrder 100
	Weapon.SlotNumber 2
	Weapon.AmmoType "SawedOffShells"
	Weapon.AmmoType2 "SawedOffShells"
	Weapon.AmmoGive 0
	Weapon.AmmoUse 1
	Weapon.AmmoUse2 2
	Inventory.Icon "TNT1A0"
	Obituary "%o was sawed off by %k."
	Decal "BulletChip"
	+WEAPON.NOAUTOAIM
	+WEAPON.NOALERT
	+INVENTORY.UNDROPPABLE
	States
	{
	Select:
		TNT1 A 0
		TNT1 A 0 A_TakeInventory("CyborgDashCheck")
		WP01 AA 0 A_Raise
		WP01 A 1 A_Raise
		Loop
	Ready:
		TNT1 A 0 A_PlayWeaponSound("SawedOffRaise")
		TNT1 A 0 A_JumpIfInventory("CyborgDashCheck",1,"ReloadCheck")
		WP01 A 1 A_WeaponReady
		Goto Ready+1
	ReloadCheck:
		TNT1 A 0
		TNT1 A 0 A_TakeInventory("CyborgDashCheck")
		TNT1 A 0 A_JumpIfInventory("sawedoffcheck", 1, "ActualReload")
		Goto Ready+1
	ActualReload:
		TNT1 A 0
		TNT1 A 0 A_GiveInventory("PositiveReload", 1)
		TNT1 A 0 A_GunFlash
		TNT1 A 23
		Goto Ready+1
	ReloadFlash:
		TNT1 A 0
		TNT1 A 0 A_TakeInventory("PositiveReload")
		TNT1 A 0 A_TakeInventory("sawedoffcheck")
		TNT1 A 0
		Goto Flash2+12
	Deselect:
		TNT1 A 0
		TNT1 A 0 A_TakeInventory("CyborgDashCheck")
		WP01 AA 0 A_Lower
		WP01 A 1 A_Lower
		Loop
	Fire:
		  TNT1 A 0
		  TNT1 A 0 A_TakeInventory("CyborgDashCheck")
		  TNT1 A 0 A_JumpIfInventory("sawedoffcheck",1,"Fire2")
		  TNT1 A 0 A_Gunflash
		  SWFL ABC 2 BRIGHT 
		  TNT1 A 7 
		  TNT1 A 0 A_GiveInventory("sawedoffcheck",1)
	   Goto ready+1
	   Fire2:
		  TNT1 A 0 A_Gunflash
		  SWFL DEF 2 BRIGHT
		  TNT1 A 26
		  TNT1 A 0 A_TakeInventory("sawedoffcheck",1)
		  TNT1 A 0 A_TakeInventory("PositiveReload", 1)
	   Goto ready+1
	   AltFire:
		  TNT1 A 0
		  TNT1 A 0 A_TakeInventory("CyborgDashCheck")
		  TNT1 A 0 A_JumpIfInventory("sawedoffcheck",1,"Fire2")
		  SWF2 A 0 A_JumpIfInventory("SawedOffShells", 2, 1)
	  Goto Fire
		  TNT1 A 0 A_Gunflash
		  SWF2 ABC 2 BRIGHT
		  TNT1 A 28
	  Goto ready+1
	  Flash:
		  TNT1 A 0
		  TNT1 A 0 A_JumpIfInventory("PositiveReload", 1, "ReloadFlash")
		  TNT1 A 0 A_JumpIfInventory("sawedoffcheck",1,"Flash2")
		  TNT1 A 0 A_PlayWeaponSound("SawedOffShoot")
		  TNT1 A 0 A_FireBullets(7, 6, 9, 2, "CalebShotgunPuff", 1)
		  ANIM DEEFFG 1 Bright
		  ANIM GFYXCBA 1
	  Stop
	  Flash2:
		  TNT1 A 0 A_PlayWeaponSound("Sawedoffshoot")
		  TNT1 A 0 A_FireBullets(7, 6, 9, 2, "CalebShotgunPuff", 1)
		  ANIM DEEFFG 1 Bright
		  ANIM GFY 1
		  TNT1 A 0 A_FireCustomMissile("Shotguncasing",0,0,3,3)
		  TNT1 A 0 A_FireCustomMissile("Shotguncasing",0,0,6,3)
		  ANIM XCBA 1
		  TNT1 A 0 A_PlaySound("sawedoffload")
		  WP01 EFG 2
		  WP01 HIJKLMNOPQRST 1
	  Stop
	  Altflash:
		  TNT1 A 0 A_JumpIfInventory("sawedoffcheck",1,"Flash2")
		  TNT1 A 0 A_JumpIfInventory("SawedOffShells", 2, 1)
	  Goto Flash
		  TNT1 A 0 A_PlayWeaponSound("sawedoffshoot2")
		  TNT1 A 0 A_FireBullets(12, 12, 13, 3, "CalebShotgunPuff", 1)
		  ANIM DEEFFGHII 1 Bright
		  ANIM HGF 1
		  TNT1 A 0 A_FireCustomMissile("Shotguncasing",0,0,3,3)
		  TNT1 A 0 A_FireCustomMissile("Shotguncasing",0,0,6,3)
		  ANIM YXC 1
		  TNT1 A 0 A_PlaySound("sawedoffload")
		  WP01 EFG 2
		  WP01 HIJKLMNOPQRST 1
	  Stop
	}
}



actor sawedoffcheck : inventory
{
	inventory.amount 1
	inventory.maxamount 1
}

Actor PositiveReload : Inventory
{
	Inventory.Amount 1
	Inventory.MaxAmount 1
}

Actor SawedOffShells : Ammo
{
	Inventory.Icon "SHELA0"
	Inventory.Amount 60
	Inventory.MaxAmount 60
	Ammo.BackPackAmount 60
	Ammo.BackPackMaxAmount 60
	+INVENTORY.IGNORESKILL
	States
	{
	Spawn:
		TNT1 A -1
		Stop
	}
}

ACTOR Revolver : weapon
{
  Obituary "%k made %o know that revolvers are the best guns."
  weapon.ammotype "pistolround"
  Weapon.SelectionOrder 1500
  Weapon.SlotNumber 1
  weapon.ammouse 1
  Inventory.Icon "TNT1A0"
  +WEAPON.NOAUTOAIM
  +WEAPON.NOALERT
  +WEAPON.AMMO_OPTIONAL
  +INVENTORY.UNDROPPABLE
  DamageType "PistolBullets"
  Decal BulletChip
  states
  {
  Ready:
    TNT1 A 0 A_PlayWeaponSound("DSROUL1")
	TNT1 A 0 A_JumpIfInventory("CyborgDashCheck", 1, "ReloadCheck")
    REVG A 1 A_WeaponReady
    Goto Ready+1
  ReloadCheck:
	TNT1 A 0
	TNT1 A 0 A_TakeInventory("CyborgDashCheck")
	TNT1 A 0 A_JumpIfInventory("pistolround", 6, "DontReload")
	Goto Reload
  DontReload:
	TNT1 A 0
	Goto Ready+1
  Deselect: 
	TNT1 A 0
	TNT1 A 0 A_TakeInventory("CyborgDashCheck")
	REVG DD 0 A_Lower
	REVG D 1 A_Lower
    Loop
  Select:
	TNT1 A 0
	TNT1 A 0 A_TakeInventory("CyborgDashCheck")
	REVG DD 0 A_Raise
	REVG D 1 A_Raise 
    Loop
  Fire:
	TNT1 A 0
	TNT1 A 0 A_TakeInventory("CyborgDashCheck")
    TNT1 A 0 A_JumpIfNoAmmo("DryFire")
    TNT1 A 0 A_GunFlash
	TNT1 A 0 A_RailAttack(23,0,0,none,none,RGF_SILENT,1,"CalebRevolverPuff")
	TNT1 A 0 A_FireBullets(0, 0, 1, 1, "CalebRevolverPuff")
	TNT1 A 0 A_FireCustomMissile("RifleCaseSpawn",5,0,3,-3)
	REVF AB 1 bright 
	TNT1 A 14
   goto Ready+1
  Flash:
    TNT1 A 0 A_PlaySound("MagnumFire")
	REVG ACD 2 A_WeaponReady(WRF_NOFIRE | WRF_NOSWITCH)
	REVG EFGHIJKLMN 1 A_WeaponReady(WRF_NOFIRE | WRF_NOSWITCH)
	stop
  AltFire:
	TNT1 A 0
	TNT1 A 0 A_TakeInventory("CyborgDashCheck")
    TNT1 A 0 A_JumpIfInventory("pistolround",1,2)
	TNT1 A 0
	Goto DryFire
	TNT1 A 0
  	REVA ABCDEF 1 A_WeaponReady(WRF_NOFIRE | WRF_NOSWITCH)
	TNT1 A 0 A_PlayWeaponSound("MagnumFire")
	TNT1 A 0 A_FireBullets(0, 0, 1, 8, "CalebRevolverPuff")
	TNT1 A 0 A_FireCustomMissile("RifleCaseSpawn",5,0,3,-3)
	TNT1 A 0 A_TakeInventory("pistolround",1)
	REVA G 1 Bright A_WeaponReady(WRF_NOFIRE | WRF_NOSWITCH)
	REVA H 2 A_WeaponReady(WRF_NOFIRE | WRF_NOSWITCH)
	REVA I 1 A_WeaponReady(WRF_NOFIRE | WRF_NOSWITCH)
	Goto Ready+1
  DryFire:
    TNT1 A 0 A_PlaySound("MagnumDryFire")
    REVG A 10 A_WeaponReady(WRF_NOFIRE | WRF_NOSWITCH)
  Reload:
	REVG A 1 A_WeaponReady(WRF_NOSWITCH)
    TNT1 A 0 A_JumpIfInventory("pistolround", 6, "Ready")
	TNT1 A 0 
    REVR ABCDEFGHIJ 1 A_WeaponReady(WRF_NOFIRE | WRF_NOSWITCH)
	TNT1 A 0 A_PlaySound("DSROUL1",2)
	REVR KLMNOP 1 A_WeaponReady(WRF_NOFIRE | WRF_NOSWITCH)
	ReloadWorking:
	REVR O 2 A_WeaponReady(WRF_NOFIRE | WRF_NOSWITCH)
	TNT1 A 0 A_PlaySound("DSMLOAD",3)
	REVR P 2 A_WeaponReady(WRF_NOFIRE | WRF_NOSWITCH)
	TNT1 A 0 A_GiveInventory("PistolRound", 1)
	TNT1 D 0 A_JumpIfInventory("pistolround",6,"ReloadFinished")
	Goto ReloadWorking
  ReloadFinished: 
    TNT1 A 0 A_PlaySound("DSMOUT",4)
	REVR PONMLKJIHGFEDCBA 1 A_WeaponReady(WRF_NOFIRE | WRF_NOSWITCH)
   Goto Ready+1
  }
}

ACTOR pistolRound : Ammo
{
   +IGNORESKILL 
   Inventory.MaxAmount 6
   Inventory.Icon "CLIPA0"
}

Actor TNT2 : Inventory
{
	inventory.amount 1
	inventory.maxamount 1
}

Actor TNTCounter : Inventory
{
	inventory.amount 1
	inventory.maxamount 3
}

Actor TNTSoundDelay : PowerDamage
{
	Damagefactor "normal", 1.0
	powerup.duration -2
}

Actor DynamiteAmmo : Ammo
{
	Inventory.Icon "DYNAMITE"
	Inventory.Amount 6
	Inventory.MaxAmount 6
	Ammo.BackPackAmount 6
	Ammo.BackPackMaxAmount 6
	+INVENTORY.IGNORESKILL
	States
	{
	Spawn:
		TNT1 A -1
		Stop
	}
}

actor Dynamite : Weapon
{ 
  weapon.selectionorder 880
  weapon.ammogive 6
  weapon.ammotype "DynamiteAmmo"
  obituary "%o was exploded by %k's dynamites."
  weapon.ammouse 1
  weapon.ammouse2 1
  weapon.ammotype2 "DynamiteAmmo"
  Weapon.SlotNumber 3
  Inventory.Icon "TNT1A0"
  //+WEAPON.NOAUTOFIRE
  +WEAPON.EXPLOSIVE
  +NOAUTOAIM
  +INVENTORY.UNDROPPABLE
  states
  {
  Ready:	
	TNTH ACB 3 A_WeaponReady
    Goto Ready
  Deselect:
	TNT1 A 0 A_Lower
    TNTL DD 1 A_Lower
	TNT1 A 0 A_Lower
    TNTL DD 1 A_Lower
	TNT1 A 0 A_Lower
	TNTL BB 1 A_Lower
	TNT1 A 0 A_Lower
	TNTL CC 1 A_Lower
	TNT1 A 0 A_Lower
    MISG A 0 A_PlayWeaponSound ("TNT/Zip")
    TNTL AAAAAAAA 1 A_Lower
    Goto Deselect+16
  Select:
	TNT1 A 0 A_Raise
    TNTL AA 1 A_Raise
	TNT1 A 0 A_Raise
	TNTL AA 1 A_Raise
	TNT1 A 0 A_Raise
	TNTL AA 1 A_Raise
	TNT1 A 0 A_Raise
	TNTL AA 1 A_Raise
    MISF A 0 A_PlayWeaponSound ("TNT/Zip")
    TNTL BBCCDD 1 A_Raise
    TNT1 AA 0 A_Raise
    Goto Select+16
  Fire:
    TNTF AB 3 A_WeaponReady(14)
	TNT1 A 0 A_PlayWeaponSound("TNT/Fuse")
	TNTF CD 3 A_WeaponReady(14)
	TNTF EF 2 A_WeaponReady(14)
	TNT1 A 0 A_Refire
	TNTF F 1 A_WeaponReady(14)
	TNT1 A 0 A_StopSound(CHAN_WEAPON)
	TNT1 A 0
	Goto Throw
  Hold:
	TNT1 A 0 A_GiveInventory("TNTCounter", 1)
	TNT1 A 0 A_JumpIfInventory("TNTSoundDelay", 1, 3)
	TNT1 A 0 A_GiveInventory("TNTSoundDelay", 1)
	TNT1 A 0 A_PlayWeaponSound("TNT/FUSE")
	TNT1 A 0 A_JumpIfInventory("ThrowPower", 0, "Throw")
	TNT1 A 0 A_JumpIfInventory("TNTCounter", 3, "Hold3")
	TNT1 A 0 A_JumpIfInventory("TNTCounter", 2, "Hold2")
	TNT1 A 0 A_JumpIfInventory("TNTCounter", 1, "Hold1")
  Hold1:
	TNT1 A 0 A_GiveInventory("ThrowPower", 3)
	TNTF W 3 A_WeaponReady(14)
	TNT1 A 0 A_Refire
	TNT1 A 0 A_StopSound(CHAN_WEAPON)
  Goto Fire+8	
  Hold2:
    TNT1 A 0 A_GiveInventory("ThrowPower", 3)
	TNTF Y 3 A_WeaponReady(14)
	TNT1 A 0 A_Refire
	TNT1 A 0 A_StopSound(CHAN_WEAPON)
  Goto Fire+8	
  Hold3:
    TNT1 A 0 A_GiveInventory("ThrowPower", 3)
	TNTF F 3 A_WeaponReady(14)
	TNT1 A 0 A_TakeInventory("TNTCounter", 3)
	TNT1 A 0 A_Refire
	TNT1 A 0 A_StopSound(CHAN_WEAPON)
  Goto Fire+8
  AltFire:
    TNTF AB 3 A_WeaponReady(14)
	TNT1 A 0 A_PlayWeaponSound("TNT/FUSE")
	TNTF CD 3 A_WeaponReady(14)
	TNTF EF 2 A_WeaponReady(14)
	TNT1 A 0 A_FireCustomMissile("PlayerTNTAlt")
	Goto ThrowFinish
  Flash:
  	TNT1 A 6 A_Light1
    TNT1 A 0 A_Light0
    stop
  Spawn:
    TNT1 A 1
    stop
  Throw:
	TNT1 A 0 A_JumpIfInventory("ThrowPower", 70, "Throw_35")
	TNT1 A 0 A_JumpIfInventory("ThrowPower", 68, "Throw_34")
	TNT1 A 0 A_JumpIfInventory("ThrowPower", 66, "Throw_33")
	TNT1 A 0 A_JumpIfInventory("ThrowPower", 64, "Throw_32")
	TNT1 A 0 A_JumpIfInventory("ThrowPower", 62, "Throw_31")
	TNT1 A 0 A_JumpIfInventory("ThrowPower", 60, "Throw_30")  
	TNT1 A 0 A_JumpIfInventory("ThrowPower", 58, "Throw_29")
	TNT1 A 0 A_JumpIfInventory("ThrowPower", 56, "Throw_28")
	TNT1 A 0 A_JumpIfInventory("ThrowPower", 54, "Throw_27")
	TNT1 A 0 A_JumpIfInventory("ThrowPower", 52, "Throw_26")
	TNT1 A 0 A_JumpIfInventory("ThrowPower", 50, "Throw_25")
	TNT1 A 0 A_JumpIfInventory("ThrowPower", 48, "Throw_24")
	TNT1 A 0 A_JumpIfInventory("ThrowPower", 46, "Throw_23")  
	TNT1 A 0 A_JumpIfInventory("ThrowPower", 44, "Throw_22")
	TNT1 A 0 A_JumpIfInventory("ThrowPower", 42, "Throw_21")
	TNT1 A 0 A_JumpIfInventory("ThrowPower", 40, "Throw_20")
	TNT1 A 0 A_JumpIfInventory("ThrowPower", 38, "Throw_19")
	TNT1 A 0 A_JumpIfInventory("ThrowPower", 36, "Throw_18")
	TNT1 A 0 A_JumpIfInventory("ThrowPower", 34, "Throw_17")
	TNT1 A 0 A_JumpIfInventory("ThrowPower", 32, "Throw_16")  
	TNT1 A 0 A_JumpIfInventory("ThrowPower", 30, "Throw_15")
	TNT1 A 0 A_JumpIfInventory("ThrowPower", 28, "Throw_14")
	TNT1 A 0 A_JumpIfInventory("ThrowPower", 26, "Throw_13")
	TNT1 A 0 A_JumpIfInventory("ThrowPower", 24, "Throw_12")
	TNT1 A 0 A_JumpIfInventory("ThrowPower", 22, "Throw_11")
	TNT1 A 0 A_JumpIfInventory("ThrowPower", 20, "Throw_10")
	TNT1 A 0 A_JumpIfInventory("ThrowPower", 18, "Throw_9")  
	TNT1 A 0 A_JumpIfInventory("ThrowPower", 16, "Throw_8")
	TNT1 A 0 A_JumpIfInventory("ThrowPower", 14, "Throw_7")
	TNT1 A 0 A_JumpIfInventory("ThrowPower", 12, "Throw_6")
	TNT1 A 0 A_JumpIfInventory("ThrowPower", 10, "Throw_5")
	TNT1 A 0 A_JumpIfInventory("ThrowPower", 8, "Throw_4")
	TNT1 A 0 A_JumpIfInventory("ThrowPower", 6, "Throw_3")
	TNT1 A 0 A_JumpIfInventory("ThrowPower", 4, "Throw_2")
	TNT1 A 0 A_JumpIfInventory("ThrowPower", 2, "Throw_1")
	TNT1 A 0 A_FireCustomMissile("PlayerTnT")
	Goto ThrowFinish
  Throw_1:
	TNT1 A 0 A_FireCustomMissile("PlayerTnT_1")
	Goto ThrowFinish
  Throw_2:
	TNT1 A 0 A_FireCustomMissile("PlayerTnT_2")
	Goto ThrowFinish
  Throw_3:
	TNT1 A 0 A_FireCustomMissile("PlayerTnT_3")
	Goto ThrowFinish	
  Throw_4:
	TNT1 A 0 A_FireCustomMissile("PlayerTnT_4")
	Goto ThrowFinish	
  Throw_5:
	TNT1 A 0 A_FireCustomMissile("PlayerTnT_5")
	Goto ThrowFinish
  Throw_6:
	TNT1 A 0 A_FireCustomMissile("PlayerTnT_6")
	Goto ThrowFinish
  Throw_7:
	TNT1 A 0 A_FireCustomMissile("PlayerTnT_7")
	Goto ThrowFinish
  Throw_8:
	TNT1 A 0 A_FireCustomMissile("PlayerTnT_8")
	Goto ThrowFinish	
  Throw_9:
	TNT1 A 0 A_FireCustomMissile("PlayerTnT_9")
	Goto ThrowFinish
  Throw_10:
	TNT1 A 0 A_FireCustomMissile("PlayerTnT_10")
	Goto ThrowFinish	
  Throw_11:
	TNT1 A 0 A_FireCustomMissile("PlayerTnT_11")
	Goto ThrowFinish
  Throw_12:
	TNT1 A 0 A_FireCustomMissile("PlayerTnT_12")
	Goto ThrowFinish
  Throw_13:
	TNT1 A 0 A_FireCustomMissile("PlayerTnT_13")
	Goto ThrowFinish	
  Throw_14:
	TNT1 A 0 A_FireCustomMissile("PlayerTnT_14")
	Goto ThrowFinish	
  Throw_15:
	TNT1 A 0 A_FireCustomMissile("PlayerTnT_15")
	Goto ThrowFinish	
  Throw_16:
	TNT1 A 0 A_FireCustomMissile("PlayerTnT_16")
	Goto ThrowFinish	
  Throw_17:
	TNT1 A 0 A_FireCustomMissile("PlayerTnT_17")
	Goto ThrowFinish	
  Throw_18:
	TNT1 A 0 A_FireCustomMissile("PlayerTnT_18")
	Goto ThrowFinish	
  Throw_19:
	TNT1 A 0 A_FireCustomMissile("PlayerTnT_19")
	Goto ThrowFinish	
  Throw_20:
	TNT1 A 0 A_FireCustomMissile("PlayerTnT_20")
	Goto ThrowFinish	
  Throw_21:
	TNT1 A 0 A_FireCustomMissile("PlayerTnT_21")
	Goto ThrowFinish	
  Throw_22:
	TNT1 A 0 A_FireCustomMissile("PlayerTnT_22")
	Goto ThrowFinish	
  Throw_23:
	TNT1 A 0 A_FireCustomMissile("PlayerTnT_23")
	Goto ThrowFinish
  Throw_24:
	TNT1 A 0 A_FireCustomMissile("PlayerTnT_24")
	Goto ThrowFinish	
  Throw_25:
	TNT1 A 0 A_FireCustomMissile("PlayerTnT_25")
	Goto ThrowFinish	
  Throw_26:
	TNT1 A 0 A_FireCustomMissile("PlayerTnT_26")
	Goto ThrowFinish
  Throw_27:
	TNT1 A 0 A_FireCustomMissile("PlayerTnT_27")
	Goto ThrowFinish
  Throw_28:
	TNT1 A 0 A_FireCustomMissile("PlayerTnT_28")
	Goto ThrowFinish	
  Throw_29:
	TNT1 A 0 A_FireCustomMissile("PlayerTnT_29")
	Goto ThrowFinish
  Throw_30:
	TNT1 A 0 A_FireCustomMissile("PlayerTnT_30")
	Goto ThrowFinish
  Throw_31:
	TNT1 A 0 A_FireCustomMissile("PlayerTnT_31")
	Goto ThrowFinish
  Throw_32:
	TNT1 A 0 A_FireCustomMissile("PlayerTnT_32")
	Goto ThrowFinish
  Throw_33:
	TNT1 A 0 A_FireCustomMissile("PlayerTnT_33")
	Goto ThrowFinish	
  Throw_34:
	TNT1 A 0 A_FireCustomMissile("PlayerTnT_34")
	Goto ThrowFinish
  Throw_35:
	TNT1 A 0 A_FireCustomMissile("PlayerTnT_35")
	Goto ThrowFinish
  ThrowFinish:
	TNT1 A 0 A_StopSound(CHAN_WEAPON)
	TNT1 A 0 A_PlayWeaponSound("TNT/Throw")
	TNT1 A 0 A_TakeInventory("ThrowPower", 99)
	TNTF GHIJKL 3
	TNTF PQMNO 3 A_WeaponReady(14)
  goto Ready
  }
}

actor TNTSmoke : BulletPuff
{
  renderstyle Translucent
  alpha 0.5
  
  +NOBLOCKMAP
  +NOGRAVITY  
  +DONTSPLASH
  PROJECTILE
  +WINDTHRUST
  +ALLOWPARTICLES
  +CLIENTSIDEONLY
  states
  {
  Spawn:
    ZUFF A 0 A_Jump(128,32)
    ZUFF AAAABBBBCCCCDDDDEEEEFFFFGGGGHHHH 1 A_FadeOut(0.01)
    stop
    ZUFF IIIIJJJJKKKKLLLLMMMMNNNNOOOOPPPP 1 A_FadeOut(0.01)
    stop
  }
}

ACTOR ThrowPower : Ammo
{
   inventory.amount 1
   inventory.MaxAmount 70
   ammo.backpackamount 0
   ammo.backpackmaxamount 70
   +IGNORESKILL
}

actor PlayerTNT
{ 
  radius 6
  height 4
  speed 15
  Scale 0.5
  reactiontime 49
  deathsound "TNT/Explode"
  activesound "TNT/Fuse"
  DamageType "CalebDynamite"
  PROJECTILE
  +DONTSPLASH
  +DONTGIB
  +NOBOUNCESOUND
   +DOOMBOUNCE
   +BOUNCEONACTORS
   bouncefactor 0.5 
   bouncecount 4
  +PUSHABLE
  -SOLID
  -NOGRAVITY
  +EXTREMEDEATH
  +SEEKERMISSILE
  states
  {
  Spawn:
    PTNT E 0 bright A_LoopActiveSound
    goto see
  See:
    PTNT E 1 bright A_SpawnItem("TNTSmoke",5)
    PTNT E 0 bright A_Countdown
    PTNT E 1 bright A_LoopActiveSound
  Cont:
    PTNT F 1 bright A_SpawnItem("TNTSmoke",5)
    PTNT E 0 bright A_Countdown   
    PTNT F 1 bright A_LoopActiveSound
    PTNT G 1 bright A_SpawnItem("TNTSmoke",5)
    PTNT E 0 bright A_Countdown
    PTNT G 1 bright A_LoopActiveSound
    PTNT H 1 bright A_SpawnItem("TNTSmoke",5)
    PTNT E 0 bright A_Countdown
    PTNT H 1 bright A_LoopActiveSound
    PTNT A 1 bright A_SpawnItem("TNTSmoke",5)
    PTNT E 0 bright A_Countdown
    PTNT A 1 bright A_LoopActiveSound
    PTNT B 1 bright A_SpawnItem("TNTSmoke",5)
    PTNT E 0 bright A_Countdown
    PTNT B 1 bright A_LoopActiveSound
    PTNT C 1 bright A_SpawnItem("TNTSmoke",5)
    PTNT E 0 bright A_Countdown
    PTNT C 1 bright A_LoopActiveSound
    PTNT D 1 bright A_SpawnItem("TNTSmoke",5)
    PTNT E 0 bright A_Countdown
    PTNT D 1 bright A_LoopActiveSound
    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,200)
	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:
    TNT1 A 0 A_SpawnItem("FloorKaboom",-16)
    TNT1 A 1 bright A_Explode(170,Random(120,160),1)
    TNT1 A 0 bright A_Scream
    stop
  }
}

Actor PlayerTNTAlt
{
	Height 4
	Radius 4
	PROJECTILE
	Speed 4
	-NOGRAVITY
    +NOBOUNCESOUND
    +DOOMBOUNCE
	+BOUNCEONACTORS
	+SEEKERMISSILE
	+CANBOUNCEWATER
	+SKYEXPLODE
	reactiontime 8
    bouncefactor 0.4
    bouncecount 4	
	deathsound "TNT/Explode"
    activesound "TNT/Fuse"
	DamageType "CalebDynamite"
	Scale 0.5
	States
	{
		Spawn:
		PTNT E 1 bright A_SpawnItem("TNTSmoke",5)
		PTNT E 0 bright A_JumpIf(z-floorz < 4, "Landed")
		PTNT E 1 bright A_LoopActiveSound
		PTNT F 1 bright A_SpawnItem("TNTSmoke",5)
		PTNT E 0 bright A_JumpIf(z-floorz < 4, "Landed")   
		PTNT F 1 bright A_LoopActiveSound
		PTNT G 1 bright A_SpawnItem("TNTSmoke",5)
		PTNT E 0 bright A_JumpIf(z-floorz < 4, "Landed")
		PTNT G 1 bright A_LoopActiveSound
		PTNT H 1 bright A_SpawnItem("TNTSmoke",5)
		PTNT E 0 bright A_JumpIf(z-floorz < 4, "Landed")
		PTNT H 1 bright A_LoopActiveSound
		PTNT A 1 bright A_SpawnItem("TNTSmoke",5)
		PTNT E 0 bright A_JumpIf(z-floorz < 4, "Landed")
		PTNT A 1 bright A_LoopActiveSound
		PTNT B 1 bright A_SpawnItem("TNTSmoke",5)
		PTNT E 0 bright A_JumpIf(z-floorz < 4, "Landed")
		PTNT B 1 bright A_LoopActiveSound
		PTNT C 1 bright A_SpawnItem("TNTSmoke",5)
		PTNT E 0 bright A_JumpIf(z-floorz < 4, "Landed")
		PTNT C 1 bright A_LoopActiveSound
		PTNT D 1 bright A_SpawnItem("TNTSmoke",5)
		PTNT E 0 bright A_JumpIf(z-floorz < 4, "Landed")
		PTNT D 1 bright A_LoopActiveSound	
	Loop
	Landed:
		PTNT I 2 Bright A_CountDown
		TNT1 A 0 A_LoopActiveSound
		PTNT JK 2 Bright A_CountDown
		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,200)
		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:
		TNT1 A 0 A_SpawnItem("FloorKaboom",-16)
		TNT1 A 1 bright A_Explode(170,Random(120,160),1)
		TNT1 A 0 bright A_Scream
		stop
	}
}

actor PlayerTNT_1 : PlayerTNT
{
	Speed 16
	States
	{
		Spawn:
			PTNT EE 1 Bright ThrustThingZ(0, 1, 0, 1)
		Goto Super::Spawn
	}
}

actor PlayerTNT_2 : PlayerTNT
{
	Speed 17
	States
	{
		Spawn:
			PTNT EE 1 Bright ThrustThingZ(0, 2, 0, 1)
		Goto Super::Spawn
	}
}

actor PlayerTNT_3 : PlayerTNT
{
	Speed 18
	States
	{
		Spawn:
			PTNT EE 1 Bright ThrustThingZ(0, 3, 0, 1)
		Goto Super::Spawn
	}
}

actor PlayerTNT_4 : PlayerTNT
{
	Speed 19
	States
	{
		Spawn:
			PTNT EE 1 Bright ThrustThingZ(0, 4, 0, 1)
		Goto Super::Spawn
	}
}

actor PlayerTNT_5 : PlayerTNT
{
	Speed 20
	States
	{
		Spawn:
			PTNT EE 1 Bright ThrustThingZ(0, 5, 0, 1)
		Goto Super::Spawn
	}
}

actor PlayerTNT_6 : PlayerTNT
{
	Speed 21
	States
	{
		Spawn:
			PTNT EE 1 Bright ThrustThingZ(0, 6, 0, 1)
		Goto Super::Spawn
	}
}

actor PlayerTNT_7 : PlayerTNT
{
	Speed 22
	States
	{
		Spawn:
			PTNT EE 1 Bright ThrustThingZ(0, 7, 0, 1)
		Goto Super::Spawn
	}
}

actor PlayerTNT_8 : PlayerTNT
{
	Speed 23
	States
	{
		Spawn:
			PTNT EE 1 Bright ThrustThingZ(0, 8, 0, 1)
		Goto Super::Spawn
	}
}

actor PlayerTNT_9 : PlayerTNT
{
	Speed 24
	States
	{
		Spawn:
			PTNT EE 1 Bright ThrustThingZ(0, 9, 0, 1)
		Goto Super::Spawn
	}
}

actor PlayerTNT_10 : PlayerTNT
{
	Speed 25
	States
	{
		Spawn:
			PTNT EE 1 Bright ThrustThingZ(0, 10, 0, 1)
		Goto Super::Spawn
	}
}

actor PlayerTNT_11 : PlayerTNT
{
	Speed 26
	States
	{
		Spawn:
			PTNT EE 1 Bright ThrustThingZ(0, 11, 0, 1)
		Goto Super::Spawn
	}
}

actor PlayerTNT_12 : PlayerTNT
{
	Speed 27
	States
	{
		Spawn:
			PTNT EE 1 Bright ThrustThingZ(0, 12, 0, 1)
		Goto Super::Spawn
	}
}

actor PlayerTNT_13 : PlayerTNT
{
	Speed 28
	States
	{
		Spawn:
			PTNT EE 1 Bright ThrustThingZ(0, 13, 0, 1)
		Goto Super::Spawn
	}
}

actor PlayerTNT_14 : PlayerTNT
{
	Speed 29
	States
	{
		Spawn:
			PTNT EE 1 Bright ThrustThingZ(0, 14, 0, 1)
		Goto Super::Spawn
	}
}

actor PlayerTNT_15 : PlayerTNT
{
	Speed 30
	States
	{
		Spawn:
			PTNT EE 1 Bright ThrustThingZ(0, 15, 0, 1)
		Goto Super::Spawn
	}
}

actor PlayerTNT_16 : PlayerTNT
{
	Speed 31
	States
	{
		Spawn:
			PTNT EE 1 Bright ThrustThingZ(0, 16, 0, 1)
		Goto Super::Spawn
	}
}

actor PlayerTNT_17 : PlayerTNT
{
	Speed 32
	States
	{
		Spawn:
			PTNT EE 1 Bright ThrustThingZ(0, 17, 0, 1)
		Goto Super::Spawn
	}
}

actor PlayerTNT_18 : PlayerTNT
{
	Speed 33
	States
	{
		Spawn:
			PTNT EE 1 Bright ThrustThingZ(0, 18, 0, 1)
		Goto Super::Spawn
	}
}

actor PlayerTNT_19 : PlayerTNT
{
	Speed 34
	States
	{
		Spawn:
			PTNT EE 1 Bright ThrustThingZ(0, 19, 0, 1)
		Goto Super::Spawn
	}
}

actor PlayerTNT_20 : PlayerTNT
{
	Speed 35
	States
	{
		Spawn:
			PTNT EE 1 Bright ThrustThingZ(0, 20, 0, 1)
		Goto Super::Spawn
	}
}

actor PlayerTNT_21 : PlayerTNT
{
	Speed 36
	States
	{
		Spawn:
			PTNT EE 1 Bright ThrustThingZ(0, 21, 0, 1)
		Goto Super::Spawn
	}
}

actor PlayerTNT_22 : PlayerTNT
{
	Speed 37
	States
	{
		Spawn:
			PTNT EE 1 Bright ThrustThingZ(0, 22, 0, 1)
		Goto Super::Spawn
	}
}

actor PlayerTNT_23 : PlayerTNT
{
	Speed 38
	States
	{
		Spawn:
			PTNT EE 1 Bright ThrustThingZ(0, 23, 0, 1)
		Goto Super::Spawn
	}
}

actor PlayerTNT_24 : PlayerTNT
{
	Speed 39
	States
	{
		Spawn:
			PTNT EE 1 Bright ThrustThingZ(0, 24, 0, 1)
		Goto Super::Spawn
	}
}

actor PlayerTNT_25 : PlayerTNT
{
	Speed 40
	States
	{
		Spawn:
			PTNT EE 1 Bright ThrustThingZ(0, 25, 0, 1)
		Goto Super::Spawn
	}
}

actor PlayerTNT_26 : PlayerTNT
{
	Speed 41
	States
	{
		Spawn:
			PTNT EE 1 Bright ThrustThingZ(0, 26, 0, 1)
		Goto Super::Spawn
	}
}

actor PlayerTNT_27 : PlayerTNT
{
	Speed 42
	States
	{
		Spawn:
			PTNT EE 1 Bright ThrustThingZ(0, 27, 0, 1)
		Goto Super::Spawn
	}
}

actor PlayerTNT_28 : PlayerTNT
{
	Speed 43
	States
	{
		Spawn:
			PTNT EE 1 Bright ThrustThingZ(0, 28, 0, 1)
		Goto Super::Spawn
	}
}

actor PlayerTNT_29 : PlayerTNT
{
	Speed 44
	States
	{
		Spawn:
			PTNT EE 1 Bright ThrustThingZ(0, 29, 0, 1)
		Goto Super::Spawn
	}
}

actor PlayerTNT_30 : PlayerTNT
{
	Speed 45
	States
	{
		Spawn:
			PTNT EE 1 Bright ThrustThingZ(0, 30, 0, 1)
		Goto Super::Spawn
	}
}

actor PlayerTNT_31 : PlayerTNT
{
	Speed 46
	States
	{
		Spawn:
			PTNT EE 1 Bright ThrustThingZ(0, 31, 0, 1)
		Goto Super::Spawn
	}
}

actor PlayerTNT_32 : PlayerTNT
{
	Speed 47
	States
	{
		Spawn:
			PTNT EE 1 Bright ThrustThingZ(0, 32, 0, 1)
		Goto Super::Spawn
	}
}

actor PlayerTNT_33 : PlayerTNT
{
	Speed 48
	States
	{
		Spawn:
			PTNT EE 1 Bright ThrustThingZ(0, 33, 0, 1)
		Goto Super::Spawn
	}
}

actor PlayerTNT_34 : PlayerTNT
{
	Speed 49
	States
	{
		Spawn:
			PTNT EE 1 Bright ThrustThingZ(0, 34, 0, 1)
		Goto Super::Spawn
	}
}

actor PlayerTNT_35 : PlayerTNT
{
	Speed 50
	States
	{
		Spawn:
			PTNT EE 1 Bright ThrustThingZ(0, 35, 0, 1)
		Goto Super::Spawn
	}
}

actor FloorKaboom
{
  radius 32
  height 50
  Decal Scorch
  renderstyle Add
  alpha 0.45
  +NOBLOCKMAP
  -NOGRAVITY  
  +DONTSPLASH
  +RANDOMIZE
  +CLIENTSIDEONLY
  PROJECTILE
  states
  {
  Spawn:
    TNT1 A 0
	DEXP A 0 A_SpawnItemEx ("FloorKaboomDouble",0,0,0,momx,momy,momz,0,SXF_NOCHECKPOSITION)
    goto Death
  Death:
    DEXP A 0 Radius_quake(2,7,0,16,0)    
    DEXP A 0 A_SpawnDebris ("NapalmDebris") 
    DEXP A 0 A_Jump(128,"AltDeath")
    DEXP ABC 2 bright    
    DEXP D 0 Radius_Quake (1,10,0,16,0)    
    DEXP DEFGHI 3 bright
    DEXP JKLM 2 bright
    stop
  AltDeath:
    DEXP NOP 2 bright    
    DEXP P 0 Radius_Quake (1,10,0,16,0)
    DEXP QRSTU 3 bright
    DEXP VWXYZ 2 bright
    stop
  }
}

actor FloorKaboomDouble : FloorKaboom
{
  states
  {
  Spawn:
    TNT1 A 0
	DEXP A 0 A_Jump(128,"AltDeath")
    DEXP ABC 1 bright    
    DEXP DEFGHI 2 bright
    DEXP JKLM 2 bright
    stop
  AltDeath:
    DEXP NOP 1 bright    
    DEXP QRSTU 2 bright
    DEXP VWXYZ 2 bright
    stop
  }
}

actor NapalmDebris
{
  health 5
  radius 1
  height 1
  Speed 10
  Scale 0.2
  PROJECTILE
  +NOBLOCKMAP
  +DONTSPLASH
  +RANDOMIZE
  -NOGRAVITY
  -SOLID
  +WINDTHRUST
  +CLIENTSIDEONLY
  //RENDERSTYLE ADD
  states
  {
  Spawn:
    FSPK A 0 bright A_Jump(192,3,4,6,8)
    FSPK A 10 bright
    FSPK A 200 bright A_LowGravity
    stop
    FSPK B 10 bright
    FSPK B 200 bright A_LowGravity
    stop
    FSPK C 10 bright
    FSPK C 200 bright A_LowGravity
    stop
    FSPK D 10 bright
    FSPK D 200 bright A_LowGravity
    stop
    FSPK E 10 bright
    FSPK E 200 bright A_LowGravity
    stop
  Death:
    FSPK A 1
    stop
  }
}

Actor CPPistol : BulletPuff2
{
	DamageType "Revolver"
	Obituary "%k made %o know that revolvers are the best guns."
}

Actor CalebRevolverPuff : BulletPuff2
{
DamageType "CalebRevolver"
}

Actor CalebShotgunPuff : BulletPuff2
{
DamageType "CalebShotgun"
}

Actor CalebHeart
{
	+DROPOFF
	Scale 0.7
	States
	{
	Spawn:
		CHRT A 0
		CHRT AAAAAAAA 5 Bright
		CHRT A 0 A_SpawnItemEx("CalebHeartHealth")
		Stop
	}
}


Actor CalebHeartHealth : CustomInventory
{
	Inventory.PickupMessage "Picked up a life essence!"
	Inventory.PickupSound "Caleb/Heart"
	Inventory.Amount 1
	Inventory.MaxAmount 100
	Scale 0.7
	States
	{
	Spawn:
		CHRT ABCDABCD 5 Bright
		CHRT ABCDABCD 5 Bright
		CHRT ABCDABCD 5 Bright
		CHRT A 1 A_FadeOut(0.1)
		Goto Spawn
	Pickup:
		TNT1 A 0 A_JumpIfInventory("Sawed-Off",1,"GiveNoHealth")
		Goto ActivateHealth
	ActivateHealth:
		TNT1 A 0 A_JumpIfInventory("BloodCurseItem",1,"Hurt")
		TNT1 A 1 A_JumpIfInventory("IsHuman",1,"GiveHealth")
		Fail
	GiveHealth:
		TNT1 A 0 A_GiveInventory("Health",20)
		Stop
	GiveNoHealth:
		TNT1 A 0
		fail
	Hurt:
		TNT1 A 0 DamageThing(20,0)
		Stop
	}
}

Actor CalebHeartbeat : CustomInventory
{
	Inventory.Amount 1
	Inventory.MaxAmount 100
	States
	{
	Spawn:
		TNT1 A 1
		Loop
	Pickup:
		ANT1 A 0 A_PlaySound("Caleb/Heart",CHAN_AUTO)
		Stop
	}
}