actor Hans : WolfensteinMonster 16
{
	points 5000
	health 850, 950, 1050, 1200
	speed 1, 3
	attacksound "hans/attack"
	deathsound "hans/death"
	seesound "hans/sight"
	dropitem "GoldKey"
	+AMBUSH
	states
	{
		Spawn:
			HANS A -1 NOP A_Look(0, 0, 0, 0, 360)
			stop
		See:
			HANS A 5 NOP A_Chase
			HANS A 1.5
			HANS B 4 NOP A_Chase
			HANS C 5 NOP A_Chase
			HANS C 1.5
			HANS D 4 NOP A_Chase
			loop
		Missile:
			HANS E 15 A_FaceTarget
			HANS F 5 A_FaceTarget
			HANS GFGFGE 5 bright A_WolfAttack(0, "*", 0.667)
			goto See
		Death:
			HANS H 7.5 A_Fall
			HANS I 7.5 A_Scream
			HANS J 7.5
			HANS K -1
			stop
	}
}

actor Gretel : WolfensteinMonster 20
{
	points 5000
	health 850, 950, 1050, 1200
	speed 1, 3
	attacksound "gretel/attack"
	deathsound "gretel/death"
	seesound "gretel/sight"
	dropitem "GoldKey"
	+AMBUSH
	states
	{
		Spawn:
			GRET A -1 NOP A_Look(0, 0, 0, 0, 360)
			stop
		See:
			GRET A 5 NOP A_Chase
			GRET A 1.5
			GRET B 4 NOP A_Chase
			GRET C 5 NOP A_Chase
			GRET C 1.5
			GRET D 4 NOP A_Chase
			loop
		Missile:
			GRET E 15 A_FaceTarget
			GRET F 5 bright A_FaceTarget
			GRET GFGFGE 5 bright A_WolfAttack
			goto See
		Death:
			GRET H 7.5 A_Fall
			GRET I 7.5 A_Scream
			GRET J 7.5
			GRET K -1
			stop
	}
}

actor Needle
{
	radius 11
	speed 16
	damage (random[MissileDamage](20, 51))
	seesound "schabbs/throw"
	PROJECTILE
	states
	{
		Spawn:
			HYPO A .5
		Loop:
			HYPO BCDA 3
			loop
		Death:
			// Keep the actor alive so our temporary damage type hack works consistantly
			TNT1 A 1
			stop
	}
}

actor Schabbs : WolfensteinMonster 17
{
	points 5000
	health 850, 950, 1550, 2400
	speed 1, 3
	missilefrequency 0.04
	deathsound "schabbs/death"
	seesound "schabbs/sight"
	+AMBUSH
	states
	{
		Spawn:
			SHAB A -1 NOP A_Look(0, 0, 0, 0, 360)
			stop
		See:
			SHAB A 5 NOP A_Chase("*", "*", CHF_BACKOFF)
			SHAB A 1.5
			SHAB B 4 NOP A_Chase("*", "*", CHF_BACKOFF)
			SHAB C 5 NOP A_Chase("*", "*", CHF_BACKOFF)
			SHAB C 1.5
			SHAB D 4 NOP A_Chase("*", "*", CHF_BACKOFF)
			loop
		Missile:
			SHAB E 15 A_FaceTarget
			SHAB F 5 A_FaceTarget
			SHAB F 0 A_FaceTarget
			SHAB F 0 A_CustomMissile("Needle")
			goto See
		Death:
			SHAB A 5 A_Fall
			SHAB A 70 A_Scream
			SHAB GHI 5
			SHAB J 10
			SHAB J -1 A_BossDeath
			stop
	}
}

actor Gift : WolfensteinMonster 21
{
	points 5000
	health 850, 950, 1050, 1200
	speed 1, 3
	missilefrequency 0.04
	attacksound "missile/fire"
	deathsound "gift/death"
	seesound "gift/sight"
	+AMBUSH
	states
	{
		Spawn:
			GIFT A -1 NOP A_Look(0, 0, 0, 0, 360)
			stop
		See:
			GIFT A 5 NOP A_Chase("*", "*", CHF_BACKOFF)
			GIFT A 1.5
			GIFT B 4 NOP A_Chase("*", "*", CHF_BACKOFF)
			GIFT C 5 NOP A_Chase("*", "*", CHF_BACKOFF)
			GIFT C 1.5
			GIFT D 4 NOP A_Chase("*", "*", CHF_BACKOFF)
			loop
		Missile:
			GIFT E 15 A_FaceTarget
			GIFT F 5 bright A_FaceTarget
			GIFT F 0 bright A_FaceTarget
			GIFT F 0 bright A_CustomMissile("Rocket")
			goto See
		Death:
			GIFT A .5 A_Fall
			GIFT A 70 A_Scream
			GIFT GHI 5
			GIFT J 10
			GIFT J -1 A_BossDeath
			stop
	}
}

actor FatFace : WolfensteinMonster 22
{
	points 5000
	health 850, 950, 1050, 1200
	speed 1, 3
	missilefrequency 0.04
	attacksound "missile/fire"
	deathsound "fat/death"
	seesound "fat/sight"
	+AMBUSH
	states
	{
		Spawn:
			FATF A -1 NOP A_Look(0, 0, 0, 0, 360)
			stop
		See:
			FATF A 5 NOP A_Chase("*", "*", CHF_BACKOFF)
			FATF A 1.5
			FATF B 4 NOP A_Chase("*", "*", CHF_BACKOFF)
			FATF C 5 NOP A_Chase("*", "*", CHF_BACKOFF)
			FATF C 1.5
			FATF D 4 NOP A_Chase("*", "*", CHF_BACKOFF)
			loop
		Missile:
			FATF E 15 A_FaceTarget
			FATF F 5 bright A_FaceTarget
			FATF G 0 bright A_FaceTarget
			FATF G 5 bright A_CustomMissile("Rocket")
			FATF HGH 5 bright A_WolfAttack
			FATF H 0 bright A_WolfAttack
			goto See
		Death:
			FATF A .5 A_Fall
			FATF A 70 A_Scream
			FATF IJK 5
			FATF L 10
			FATF L -1 A_BossDeath
			stop
	}
}
