actor LegBoxBase
{
	+NOTARGET
	damagefactor "Cut", 1.25
	damagefactor "PowerCut", 1.65
	damagefactor "Sharpshooter", 1.15
	damagefactor "PerkedSS", 1.15
	damagefactor "SSG", 9.0
	damagefactor "Plasma", 5.9
	damagefactor "Blood", 0.0
	damagefactor "Head", 0.0
	damagefactor "MinorHead", 0.0
	damagefactor "KillMe", 0.0
	damagefactor "Explosive", 2.0
	damagefactor "Fire", 5.0
	damagefactor "Shotgun", 0.7
	Damagefactor "Vomit", 0.0
	damagefactor "Cripple", 0.0
	MONSTER
	-COUNTKILL
	Health 100
	Radius 28
	Height 24
	DamageType Cripple
	PainChance 255
	+NOGRAVITY
	+SHOOTABLE
	+NOTELEPORT
	-SOLID
	+NODAMAGETHRUST
	+THRUGHOST
	+THRUACTORS
	+NORADIUSDMG
	+GHOST
	+NOCLIP
	+SERVERSIDEONLY
	-COUNTKILL
	States
	{
		//============================================================
		// INITIAL SPAWN STATE
		//============================================================
		Spawn:
		TNT1 A 0
		TNT1 A 0 ACS_ExecuteWithResult(49,0,0,0)	// Scale our health based on stuff
		TNT1 A 3
		Stop

		//============================================================
		// PAIN STATE: NORMAL
		//============================================================
		Pain:
		//TNT1 A 0 A_PlaySound("skull/hit")
		TNT1 A 1
		XDT3 A 0 A_Explode(20,20)
		Stop
		
		//============================================================
		// PAIN STATE: SHOTGUN
		//============================================================

		Pain.Shotgun:
		//TNT1 A 0 A_PlaySound("skull/hit")
		TNT1 A 1
		XDT3 A 0 A_Explode(35,20)
		Stop
		
		Pain.PointBlank:
		//TNT1 A 0 A_PlaySound("skull/hit")
		TNT1 A 1
		XDT3 A 0 A_Explode(60,20)
		Stop
		
		//============================================================
		// DEATH STATE: NORMAL
		//============================================================

		Death:
		XDT3 A 0 A_Explode(170,20)
		TNT1 A 1
		Stop

		//============================================================
		// DEATH STATE: PLASMA PROBABLY UNUSED
		//============================================================

		Death.Plasma:
		TNT1 A 1
		TNT1 A 0 A_Explode(160,20)
		Stop
		
		//============================================================
		// DEATH STATE: MELEE WEAPONS
		//============================================================

		Death.Cut:
		TNT1 A 1
		TNT1 A 0 A_SpawnItemEx("HeadshotMajorHitMelee",0,0,0)
		//TNT1 A 0 A_Explode(150,20)
		Stop

		//============================================================
		// DEATH STATE: SHOTGUN
		//============================================================

		Death.PointBlank:
		Death.Shotgun:
		TNT1 A 1
		TNT1 A 0 A_Explode(220,20)
		Stop

		//============================================================
		// DEATH STATE: MELEE WEAPONS
		//============================================================

		Death.MeleeDecap:
		Death.PowerCut:
		TNT1 A 1
		TNT1 A 0 A_Explode(150,20)
		Stop

		//============================================================
		// DEATH STATE: EXPLOSIVE WEAPONS / FIRE
		//============================================================

		// DO NOTHING SINCE EXPLOSIVES REALLY SHOULDN'T AFFECT HEADS
		Death.ExplosiveDamage:
		Death.Explosive:
		Death.Fire:
		XDeath:
		TNT1 A 1
		Stop

	}
}

// Used when a leg set is dealt a lot of damage
actor LegHit
{
	Radius 10
	Height 10
	DamageType Cripple
	+NOTARGET
	+FORCERADIUSDMG
	+NOGRAVITY
	+NOTELEPORT
	+NODAMAGETHRUST
	+THRUGHOST
	+NORADIUSDMG
	+NOEXTREMEDEATH
	+FORCERADIUSDMG
	+DEHEXPLOSION
	+ACTIVATEMCROSS
	PROJECTILE
	States
	{
		Spawn:
			VZOM A 0
			VZOM A 0 A_JumpIf(4 == (ACS_ExecuteWithResult(50,0,0,0)),"BoomUnforgiving")
			VZOM A 0 A_JumpIf(3 == (ACS_ExecuteWithResult(50,0,0,0)),"BoomSuicidal")
			VZOM A 0 A_JumpIf(2 == (ACS_ExecuteWithResult(50,0,0,0)),"BoomModerate")
			VZOM A 0 A_JumpIf(1 == (ACS_ExecuteWithResult(50,0,0,0)),"BoomSoft")
			VZOM A 0 A_JumpIf(0 == (ACS_ExecuteWithResult(50,0,0,0)),"BoomMeat")
			Goto BoomModerate
		BoomMeat:
			XDT3 A 0 A_Explode(340,20)
			Goto End
		BoomSoft:
			XDT3 A 0 A_Explode(160,20)
			XDT3 A 0 A_Explode(160,20)
			Goto End
		BoomModerate:
			XDT3 A 0 A_Explode(150,20)
			XDT3 A 0 A_Explode(150,20)
			Goto End
		BoomSuicidal:
			XDT3 A 0 A_Explode(125,20)
			XDT3 A 0 A_Explode(125,20)
			Goto End
		BoomUnforgiving:
			XDT3 A 0 A_Explode(150,20)
			Goto End
		End:
			TNT1 AAA 1
			Stop
	}
}