//Enemies, projectiles used in Wolfenstein 3D

// Items With Spawn Numbers follow the following rules:
// 	1) Numbered in order of appearance (1-15)
//	2) Still Actors are 200XX, where XX is 1-15
//	3) Moving Actors are 202XX, where XX is 1-15
//	4) Pac-Man Ghosts are a special case, as I forgot to add 200.

//Wolf3D Rocket

ACTOR WolfRocket
{
	PROJECTILE
	Radius 4
	Speed 14
	SeeSound "missile/fire"
	DeathSound "missile/hit"
	damagetype "WolfNazi"
	States
	{
	Spawn:
		MISL A 1
		MISL A 1 BRIGHT A_SpawnItemEx("WolfRocketSmoke", 0, 0, -40)
		Loop
	Death:
		BAL3 CDE 4 A_Explode(16, 32, 1)
		Stop
	}
}

ACTOR WolfRocketSmoke
{
	+NOBLOCKMAP
	+DROPOFF
	+NOGRAVITY
	- SOLID
	Height 5
	Radius 5
	Speed 0
	States
	{
	Spawn:
		NULL A 3
		RTRL ABC 2
	Death:
		RTRL D 2
		Stop
	}
}

ACTOR Syringe
{
	Projectile
	Speed 14
	Damage 6
	ExplosionDamage 6
	ExplosionRadius 10
	SeeSound "syringe/throw"
	damagetype "WolfNazi"
	damagetype "WolfNaziSyringe"
	States
	{
	Spawn:
		WB3P AB 4
		Loop
	Death:
		TNT1 AAA 4 A_Explode
		Stop
	}
}

ACTOR WolfPuff : BulletPuff
{
	damagetype "WolfNazi"
}

ACTOR EmptyPuff : BulletPuff replaces BulletPuff
{
	+NOSECTOR
}

//Episode 1

ACTOR Dog replaces Demon 20201
{
	Health 1
	Radius 28
	Height 38
	DeathHeight 0
	Speed 5
	Mass 10000
	Painchance 255
	MONSTER
	+FLOORClip
	+JUSTHIT
	+FULLVOLACTIVE
	+FULLVOLDEATH
	+LOOKALLAROUND
	+CANNOTPUSH
	+DONTGIB
	+NOTARGET
	SeeSound "dog/sight"
	AttackSound "dog/attack"
	DeathSound "dog/death"
	Obituary "%o was bitten by a Dog."
	MeleeDamage 2
	BloodColor "FF 00 00"
	DamageFactor "WolfNazi", 0.0
	States
	{
	Spawn:
		WDOG AA 1 A_Wander
		WDOG AB 1 A_Look
		WDOG BB 1 A_Wander
		WDOG BB 1 A_Look
		WDOG CC 1 A_Wander
		WDOG CC 1 A_Look
		WDOG DD 1 A_Wander
		WDOG DD 1 A_Look
		Loop
	See:
		WDOG A 1 //ACS_ExecuteAlways (13, 0, tid)
		WDOG AAABBBBCCCCDDDD 1 A_Chase
		Loop
	Melee:
		WDOG EE 3 A_FaceTarget
		WDOG FF 3 A_MeleeAttack
		WDOG GG 3
		WDOG AA 4
		Goto See
	Pain:
		WDOG E 6
		Goto See
	Death:
		WDOG H 5 A_Scream
		WDOG I 5
		WDOG J 5 A_GiveToTarget("Points", 100)
		WDOG K -1
		Stop
	}
}

ACTOR BrownNazi 20002
{
	Health 25
	Radius 26
	Height 54
	DeathHeight 0
	Speed 3
	Mass 10000
	Painchance 255
	MONSTER 
	+FLOORClip
	+FULLVOLACTIVE
	+FULLVOLDEATH
	+DONTGIB
	+NOTARGET
	SeeSound "brown/sight"
	AttackSound "shots/single"
	DeathSound "brown/death"
	Obituary "%o was killed by a Guard."
	BloodColor "FF 00 00"
	Damage 2
	States
	{
	Spawn:
		WBRN EEEEEE 4 A_Look
		Loop
	See:
		WBRN AAAAAABBBBBBCCCCCDDDDDD 1 A_Chase
		Loop
	Missile:
		WBRN G 4 A_CposRefire
		WBRN H 4 A_FaceTarget
		WBRN I 8 BRIGHT A_BulletAttack
		WBRN HHGG 1
		WBRN AAAAAABBBBBB 1 A_Chase
		WBRN G 0 A_CposRefire
		Loop
	Pain:
		WBRN F 6 A_Pain
		Goto See
	Death:
		WBRN J 5 ACS_ExecuteAlways (25, 0, 0)
		WBRN K 5 A_Scream
		WBRN L 5 
		WBRN M 5
		WBRN N -1
		Stop
	}
}

ACTOR MBrownNazi : BrownNazi 20202
{
	+JUSTHIT
	States
	{
	Spawn:
		WBRN A 3 A_Wander
		WBRN A 3 A_Look
		WBRN B 3 A_Wander
		WBRN B 3 A_Look
		WBRN C 3 A_Wander
		WBRN C 3 A_Look
		WBRN D 3 A_Wander
		WBRN D 3 A_Look
		Loop
	}
}

ACTOR BlueNazi replaces ShotgunGuy 20003
{
	Health 100
	Radius 26
	Height 54
	DeathHeight 0
	Speed 4
	Mass 10000
	Painchance 255
	MONSTER 
	+FLOORCLIP
	+FULLVOLACTIVE
	+FULLVOLDEATH
	+DONTGIB
	+NOTARGET
	SeeSound "blue/sight"
	AttackSound "shots/burst"
	DeathSound "blue/death"
	Obituary "%o was killed by an SS Nazi."
	BloodColor "FF 00 00"
	Damage 2
	States
	{
	Spawn:
		WBLU EEEEEE 4 A_Look
		Loop
	See:
		WBLU AAAAAABBBBBBCCCCCCDDDDDD 1 A_Chase
		Loop
	Missile:
		WBLU G 5 A_CPosRefire
		WBLU H 5 A_FaceTarget
		WBLU I 8 BRIGHT A_BulletAttack
		WBLU H 0 A_CPosRefire
		WBLU H 2 A_FaceTarget
		WBLU I 8 BRIGHT A_BulletAttack
		WBLU H 0 A_CPosRefire
		WBLU H 2 A_FaceTarget
		WBLU I 8 BRIGHT A_BulletAttack
		WBLU H 0 A_CPosRefire
		WBLU H 2 A_FaceTarget
		WBLU I 8 BRIGHT A_BulletAttack
		WBLU H 0 A_CPosRefire
		WBLU H 5 
		Goto See
	Pain:
		WBLU F 6 A_Pain
		Goto See
	Death:
		WBLU J 5 ACS_ExecuteAlways (25, 0, 1)
		WBLU K 5 A_Scream
		WBLU L 5
		WBLU M 5// ACS_ExecuteAlways(700, 0, 500)
		WBLU N -1
		Stop
	}
}

ACTOR MBlueNazi : BlueNazi replaces WolfensteinSS 20203
{
	+JUSTHIT
	States
	{
	Spawn:
		WBLU A 3 A_Wander
		WBLU A 3 A_Look
		WBLU B 3 A_Wander
		WBLU B 3 A_Look
		WBLU C 3 A_Wander
		WBLU C 3 A_Look
		WBLU D 3 A_Wander
		WBLU D 3 A_Look
		Loop
	}
}

ACTOR MBlueNazi : BlueNazi replaces WolfensteinSS 20203
{
	+JUSTHIT
	States
	{
	Spawn:
		WBLU AAA 1 A_Wander
		WBLU AAA 1 A_LookEx (0, 0, 0, 2048, 0, "See")
		WBLU BBB 1 A_Wander
		WBLU BBB 1 A_LookEx (0, 0, 0, 2048, 0, "See")
		WBLU CCC 1 A_Wander
		WBLU CCC 1 A_LookEx (0, 0, 0, 2048, 0, "See")
		WBLU DDD 1 A_Wander
		WBLU DDD 1 A_LookEx (0, 0, 0, 2048, 0, "See")
		Loop
	}
}

ACTOR HansGrosse Replaces BaronofHell 20010
{
	-SOLID
	+NOSECTOR
	RenderStyle None
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(801) == 0, "EasySpawn")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(801) == 1, "NormalSpawn")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(801) == 2, "MediumSpawn") 
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(801) == 3, "HardSpawn")
		Stop
	EasySpawn:
		TNT1 A 1 A_SpawnItemEx("HansGrosseEasy")
		Stop
	NormalSpawn:
		TNT1 A 1 A_SpawnItemEx("HansGrosseNormal")
		Stop
	MediumSpawn:
		TNT1 A 1 A_SpawnItemEx("HansGrosseMedium")
		Stop
	HardSpawn:
		TNT1 A 1 A_SpawnItemEx("HansGrosseHard")
		Stop
	}
}


ACTOR HansGrosseEasy
{
	Health 850
	Radius 26
	Height 54
	DeathHeight 0
	Speed 3
	Mass 10000
	Painchance 0
	MONSTER 
	+FLOORCLIP
	+BOSS
	+JUSTHIT
	+LOOKALLAROUND
	+MISSILEMORE
	+MISSILEEVENMORE
	+SHORTMISSILERANGE
	+DONTGIB
	+NOTARGET
	SeeSound "boss/sight"
	AttackSound "boss/attack"
	DeathSound "boss/death"
	Obituary "%o was killed by Hans Grosse."
	BloodColor "FF 00 00"
	DamageFactor "WolfNazi", 0.0
	States
	{
	Spawn:
		WBOS A 0
		WBOS A 5 A_Look
		Goto Spawn + 1
	See:
		WBOS AAAAAABBBBBBCCCCCCDDDDDD 1 A_Chase
		Loop
	Missile:
		WBOS E 8 A_FaceTarget
		WBOS E 2 A_CPosRefire
		WBOS H 0 A_JumpIfCloser(96, "CloseShot") // SS and bosses are more accurate
		WBOS H 0 A_JumpIfCloser(192, "MidShot")
		WBOS FG 5 BRIGHT A_CustomBulletAttack(5.0, 5.0, 1, ACS_ExecuteWithResult(800, 4), "WolfPuff")
		WBOS E 0 A_CPosRefire
		WBOS E 0 A_FaceTarget
		WBOS FG 5 BRIGHT A_CustomBulletAttack(5.0, 5.0, 1, ACS_ExecuteWithResult(800, 4), "WolfPuff")
		WBOS E 0 A_CPosRefire
		WBOS E 0 A_FaceTarget
		WBOS FG 5 BRIGHT A_CustomBulletAttack(5.0, 5.0, 1, ACS_ExecuteWithResult(800, 4), "WolfPuff")
		WBOS E 0 A_CPosRefire
		WBOS E 10 A_FaceTarget
		Goto See
		CloseShot:
			WBOS FG 5 BRIGHT A_CustomBulletAttack(3.0, 3.0, 1, ACS_ExecuteWithResult(800, 2), "WolfPuff")
			WBOS E 0 A_CPosRefire
			WBOS E 0 A_FaceTarget
			WBOS FG 5 BRIGHT A_CustomBulletAttack(3.0, 3.0, 1, ACS_ExecuteWithResult(800, 2), "WolfPuff")
			WBOS E 0 A_CPosRefire
			WBOS E 0 A_FaceTarget
			WBOS FG 5 BRIGHT A_CustomBulletAttack(3.0, 3.0, 1, ACS_ExecuteWithResult(800, 2), "WolfPuff")
			WBOS E 0 A_CPosRefire
			WBOS E 10 A_FaceTarget
			Goto See
		MidShot:
			WBOS FG 5 BRIGHT A_CustomBulletAttack(4.0, 4.0, 1, ACS_ExecuteWithResult(800, 3), "WolfPuff")
			WBOS E 0 A_CPosRefire
			WBOS E 0 A_FaceTarget
			WBOS FG 5 BRIGHT A_CustomBulletAttack(4.0, 4.0, 1, ACS_ExecuteWithResult(800, 3), "WolfPuff")
			WBOS E 0 A_CPosRefire
			WBOS E 0 A_FaceTarget
			WBOS FG 5 BRIGHT A_CustomBulletAttack(4.0, 4.0, 1, ACS_ExecuteWithResult(800, 3), "WolfPuff")
			WBOS E 0 A_CPosRefire
			WBOS E 10 A_FaceTarget
			Goto See
	Death:
		WBOS H 2 ACS_ExecuteAlways (25, 0, 2)
		WBOS H 4 A_GiveToTarget("Points", 5000)
		WBOS IJ 6 A_Scream
		WBOS K -1
		Stop
	}
}

ACTOR HansGrosseNormal : HansGrosseEasy
{
	Health 950
}

ACTOR HansGrosseMedium : HansGrosseEasy
{
	Health 1050
}

ACTOR HansGrosseHard : HansGrosseEasy
{
	Health 1200
}

//Episode 2

ACTOR WhiteNazi : BrownNazi 20004
{
	Speed 5
	Mass 10000
	Health 50
	SeeSound "white/sight"
	AttackSound "shots/single"
	DeathSound "white/death"
	Obituary "%o was killed by a Nazi Officer."
	BloodColor "FF 00 00"
	Damage 3
	States
	{
	Spawn:
		WWHT ZZZZZZ 2 A_Look
		Loop
	See:
		WWHT E 4
		WWHT AAAABBBBCCCCDDDD 1 A_Chase
		Goto See+1
	Missile:
		WWHT EEFF 2 A_FaceTarget
		WWHT GG 2 BRIGHT A_BulletAttack
		WWHT FF 4
		WWHT AAAABBBB 1 A_Chase
		WWHT F 0 A_CposRefire
		Loop
	Pain:
		WWHT H 6 A_Pain
		Goto See
	Death:
		WWHT H 5 ACS_ExecuteAlways (25, 0, 0)
		WWHT I 5 A_Scream
		WWHT J 5
		WWHT K 5// ACS_ExecuteAlways(700, 0, 400)
		WWHT L 5
		WWHT M -1
		Stop
	}
}

ACTOR MWhiteNazi : WhiteNazi 20204
{
	+JUSTHIT
	States
	{
	Spawn:
		WWHT A 2 A_Wander
		WWHT A 2 A_Look
		WWHT B 2 A_Wander
		WWHT B 2 A_Look
		WWHT C 2 A_Wander
		WWHT C 2 A_Look
		WWHT D 2 A_Wander
		WWHT D 2 A_Look
		Loop
	}
}

ACTOR Mutant replaces DoomImp 20005
{
	-SOLID
	+NOSECTOR
	RenderStyle None
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(801) == 0, "EasySpawn")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(801) == 1, "NormalSpawn")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(801) == 2, "MediumSpawn") 
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(801) == 3, "HardSpawn")
		Stop
	EasySpawn:
		TNT1 A 1 A_SpawnItemEx("MutantEasy")
		Stop
	NormalSpawn:
	MediumSpawn:
		TNT1 A 1 A_SpawnItemEx("MutantNormalMedium")
		Stop
	HardSpawn:
		TNT1 A 1 A_SpawnItemEx("MutantHard")
		Stop
	}
}

Actor MutantEasy : BlueNazi
{
	Health 45
	Speed 3
	Mass 10000
	AttackSound "shots/single"
	SeeSound "mutant/sight"
	DeathSound "mutant/death"
	Obituary "%o was killed by a Mutant."
	DamageFactor "WolfNazi", 0.0
	BloodColor "FF 00 FF"
	States
	{
	Spawn:
		WMUT ZZZZZZ 3 A_LookEx (0, 0, 0, 2048, 0, "See")
		Loop
	See:
		WMUT A 1 //ACS_ExecuteAlways (13, 0, tid)
		WMUT AAAAABBBBBBCCCCCCDDDDDD 1 A_Chase
		Loop
	Missile:
		WMUT G 0 A_FaceTarget
		WMUT G 0 A_JumpIfCloser(64, "CloseShot")
		WMUT G 0 A_JumpIfCloser(128, "MidShot")
		WMUT G 10 BRIGHT A_CustomBulletAttack(7.0, 7.0, 1, ACS_ExecuteWithResult(800, 4), "WolfPuff")
		WMUT H 5 A_CPosRefire
		WMUT I 0 A_FaceTarget
		WMUT I 10 BRIGHT A_CustomBulletAttack(7.0, 7.0, 1, ACS_ExecuteWithResult(800, 4), "WolfPuff")
		MissileResume:
		WMUT H 5 A_CPosRefire
		WMUT AAAAAABBBBBB 1 A_Chase
		Goto Missile
		CloseShot:
			WMUT G 10 BRIGHT A_CustomBulletAttack(5.0, 5.0, 1, ACS_ExecuteWithResult(800, 2), "WolfPuff")
			WMUT H 5 A_CPosRefire
			WMUT I 0 A_FaceTarget
			WMUT I 10 BRIGHT A_CustomBulletAttack(5.0, 5.0, 1, ACS_ExecuteWithResult(800, 2), "WolfPuff")
			Goto MissileResume
		MidShot:
			WMUT G 10 BRIGHT A_CustomBulletAttack(6.0, 6.0, 1, ACS_ExecuteWithResult(800, 3), "WolfPuff")
			WMUT H 5 A_CPosRefire
			WMUT I 0 A_FaceTarget
			WMUT I 10 BRIGHT A_CustomBulletAttack(6.0, 6.0, 1, ACS_ExecuteWithResult(800, 3), "WolfPuff")
			Goto MissileResume
	Pain:
		WMUT E 6 A_Pain
		Goto See
	Death:
		WMUT J 2 ACS_ExecuteAlways (25, 0, 0)
		WMUT J 1 A_Scream
		WMUT K 4
		WMUT L 4 A_GiveToTarget("Points", 700)
		WMUT MN 4
		WMUT O -1
		Stop
	}
}

ACTOR MutantNormalMedium : MutantEasy
{
	Health 55
}

ACTOR MutantHard : MutantEasy
{
	Health 65
}

ACTOR MMutant 20205
{
	-SOLID
	+NOSECTOR
	RenderStyle None
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(801) == 0, "EasySpawn")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(801) == 1, "NormalSpawn")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(801) == 2, "MediumSpawn") 
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(801) == 3, "HardSpawn")
		Stop
	EasySpawn:
		TNT1 A 1 A_SpawnItemEx("MMutantEasy")
		Stop
	NormalSpawn:
	MediumSpawn:
		TNT1 A 1 A_SpawnItemEx("MMutantNormalMedium")
		Stop
	HardSpawn:
		TNT1 A 1 A_SpawnItemEx("MMutantHard")
		Stop
	}
}

ACTOR MMutantEasy : MutantEasy
{
	+JUSTHIT
	States
	{
	Spawn:
		WMUT AAA 1 A_Wander
		WMUT AAA 1 A_LookEx (0, 0, 0, 2048, 0, "See")
		WMUT BBB 1 A_Wander
		WMUT BBB 1 A_LookEx (0, 0, 0, 2048, 0, "See")
		WMUT CCC 1 A_Wander
		WMUT CCC 1 A_LookEx (0, 0, 0, 2048, 0, "See")
		WMUT DDD 1 A_Wander
		WMUT DDD 1 A_LookEx (0, 0, 0, 2048, 0, "See")
		Loop
	}
}

ACTOR MMutantNormalMedium : MMutantEasy
{
	Health 55
}

ACTOR MMutantHard : MMutantEasy
{
	Health 65
}

Actor DrSchabbs replaces Revenant 20011
{
	-SOLID
	+NOSECTOR
	RenderStyle None
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(801) == 0, "EasySpawn")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(801) == 1, "NormalSpawn")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(801) == 2, "MediumSpawn") 
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(801) == 3, "HardSpawn")
		Stop
	EasySpawn:
		TNT1 A 1 A_SpawnItemEx("DrSchabbsEasy")
		Stop
	NormalSpawn:
		TNT1 A 1 A_SpawnItemEx("DrSchabbsNormal")
		Stop
	MediumSpawn:
		TNT1 A 1 A_SpawnItemEx("DrSchabbsMedium")
		Stop
	HardSpawn:
		TNT1 A 1 A_SpawnItemEx("DrSchabbsHard")
		Stop
	}
}

ACTOR DrSchabbsEasy
{
	Health 850
	Radius 26
	Height 56
	DeathHeight 0
	Speed 4
	Mass 1000
	Painchance 0
	MONSTER 
	+FLOORCLIP
	+NORADIUSDMG
	+LOOKALLAROUND
	+BOSS
	+JUSTHIT
	+AMBUSH
	+NOTARGET
	SeeSound "bos3/active"
	DeathSound "bos3/death"
	Obituary "%o was killed by Doctor Schabbs."
	BloodColor "FF 00 00"
	DamageFactor "WolfNazi", 0.0
	States
	{
	Spawn:
		WBO3 A 5 A_Look
		Loop
	See:
		WBO3 AAAAAABBBBBBCCCCCCDDDDDD 1 A_Chase
		Loop
	Missile:
		WBO3 E 10 A_FaceTarget
		WBO3 F 5 A_CustomMissile ("Syringe", 30, 18, 0)
		Goto See
	Pain:
		WBO3 G 6 A_Pain
		Goto See
	Death:
		WBO3 A 60 A_Scream
		WBO3 H 5
		WBO3 I 5 A_GiveToTarget("Points", 5000)
		WBO3 JK 5
		WBO3 K 60// ACS_ExecuteAlways(27, 0)
		WBO3 K -1 A_BossDeath
		Stop
	}
}

ACTOR DrSchabbsNormal : DrSchabbsEasy
{
	Health 950
}

ACTOR DrSchabbsMedium : DrSchabbsEasy
{
	Health 1550
}

ACTOR DrSchabbsHard : DrSchabbsEasy
{
	Health 2400
}

//Episode 3

Actor Hitler replaces Cyberdemon 20012
{
	-SOLID
	+NOSECTOR
	RenderStyle None
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(801) == 0, "EasySpawn")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(801) == 1, "NormalSpawn")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(801) == 2, "MediumSpawn") 
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(801) == 3, "HardSpawn")
		Stop
	EasySpawn:
		TNT1 A 1 A_SpawnItemEx("HitlerEasy")
		Stop
	NormalSpawn:
		TNT1 A 1 A_SpawnItemEx("HitlerNormal")
		Stop
	MediumSpawn:
		TNT1 A 1 A_SpawnItemEx("HitlerMedium")
		Stop
	HardSpawn:
		TNT1 A 1 A_SpawnItemEx("HitlerHard")
		Stop
	}
}

ACTOR HitlerEasy
{
	Health 400
	Radius 26
	Height 60
	DeathHeight 0
	Speed 2
	Mass 10000
	Painchance 0
	MONSTER 
	+FLOORCLIP
	+BOSS
	+NOTARGET
	+LOOKALLAROUND
	SeeSound "hitler1/sight"
	AttackSound "boss/attack"
	DeathSound ""
	DeathHeight 0
	Obituary "%o was killed by Adolf Hitler."
	BloodColor "00 00 00"
	DamageFactor "WolfNazi", 0.0
	States
	{
	Spawn:
		WHR1 AAAAAAAAAAAA 1 A_Look
		Loop
	See:
		WHR1 AAAAAAAA 1 A_Chase
		WHR1 A 0 A_PlaySound ("hitler1/death")
		WHR1 BBBB 1 A_Chase
		WHR1 CCCCCCCC 1 A_Chase
		WHR1 A 0 A_PlaySound ("hitler1/death")
		WHR1 DDDD 1 A_Chase
		Loop
	Missile:
		WHR1 E 10 A_FaceTarget
		WHR1 G 0 A_JumpIfCloser(96, "CloseShot")
		WHR1 G 0 A_JumpIfCloser(192, "MidShot")
		WHR1 F 5 BRIGHT A_CustomBulletAttack(5.0, 5.0, 1, ACS_ExecuteWithResult(800, 4), "WolfPuff")
		WHR1 E 0 A_CPosRefire
		WHR1 E 0 A_FaceTarget
		WHR1 G 5 BRIGHT A_CustomBulletAttack(5.0, 5.0, 1, ACS_ExecuteWithResult(800, 4), "WolfPuff")
		WHR1 E 0 A_CPosRefire
		WHR1 E 0 A_FaceTarget
		WHR1 F 5 BRIGHT A_CustomBulletAttack(5.0, 5.0, 1, ACS_ExecuteWithResult(800, 4), "WolfPuff")
		WHR1 E 0 A_CPosRefire
		WHR1 E 0 A_FaceTarget
		WHR1 G 5 BRIGHT A_CustomBulletAttack(5.0, 5.0, 1, ACS_ExecuteWithResult(800, 4), "WolfPuff")
		WHR1 E 0 A_CPosRefire
		WHR1 E 0 A_FaceTarget
		WHR1 F 5 BRIGHT A_CustomBulletAttack(5.0, 5.0, 1, ACS_ExecuteWithResult(800, 4), "WolfPuff")
		MissileResume:
		WHR1 E 0 A_CPosRefire
		WHR1 E 0 A_Jump(64,4)
		WHR1 AAAAAAAAAAAA 1 A_Chase
		WHR1 A 0 A_PlaySound ("hitler1/death")
		WHR1 BBBBBBBBBBBB 1 A_Chase
		Goto Missile
		CloseShot:
			WHR1 F 5 BRIGHT A_CustomBulletAttack(3.0, 3.0, 1, ACS_ExecuteWithResult(800, 2), "WolfPuff")
			WHR1 E 0 A_CPosRefire
			WHR1 E 0 A_FaceTarget
			WHR1 G 5 BRIGHT A_CustomBulletAttack(3.0, 3.0, 1, ACS_ExecuteWithResult(800, 2), "WolfPuff")
			WHR1 E 0 A_CPosRefire
			WHR1 E 0 A_FaceTarget
			WHR1 F 5 BRIGHT A_CustomBulletAttack(3.0, 3.0, 1, ACS_ExecuteWithResult(800, 2), "WolfPuff")
			WHR1 E 0 A_CPosRefire
			WHR1 E 0 A_FaceTarget
			WHR1 G 5 BRIGHT A_CustomBulletAttack(3.0, 3.0, 1, ACS_ExecuteWithResult(800, 2), "WolfPuff")
			WHR1 E 0 A_CPosRefire
			WHR1 E 0 A_FaceTarget
			WHR1 F 5 BRIGHT A_CustomBulletAttack(3.0, 3.0, 1, ACS_ExecuteWithResult(800, 2), "WolfPuff")
			Goto MissileResume
		MidShot:
			WHR1 F 5 BRIGHT A_CustomBulletAttack(4.0, 4.0, 1, ACS_ExecuteWithResult(800, 3), "WolfPuff")
			WHR1 E 0 A_CPosRefire
			WHR1 E 0 A_FaceTarget
			WHR1 G 5 BRIGHT A_CustomBulletAttack(4.0, 4.0, 1, ACS_ExecuteWithResult(800, 3), "WolfPuff")
			WHR1 E 0 A_CPosRefire
			WHR1 E 0 A_FaceTarget
			WHR1 F 5 BRIGHT A_CustomBulletAttack(4.0, 4.0, 1, ACS_ExecuteWithResult(800, 3), "WolfPuff")
			WHR1 E 0 A_CPosRefire
			WHR1 E 0 A_FaceTarget
			WHR1 G 5 BRIGHT A_CustomBulletAttack(4.0, 4.0, 1, ACS_ExecuteWithResult(800, 3), "WolfPuff")
			WHR1 E 0 A_CPosRefire
			WHR1 E 0 A_FaceTarget
			WHR1 F 5 BRIGHT A_CustomBulletAttack(4.0, 4.0, 1, ACS_ExecuteWithResult(800, 3), "WolfPuff")
			Goto MissileResume
	Death:
		WHR1 H 5 A_PlaySound ("hitler2/sight")
		WHR1 IJ 5 A_Scream
		WHR1 K 1 A_CustomMissile ("Hitler2", 0, 0, 0)
		WHR1 K -1 A_GiveToTarget("Points", 5000)
		Stop
	}
}

ACTOR HitlerNormal : HitlerEasy
{
	Health 475
}

ACTOR HitlerMedium : HitlerEasy
{
	Health 525
}

ACTOR HitlerHard : HitlerEasy
{
	Health 600
}

Actor Hitler2 replaces SpiderMastermind 20024
{
	-SOLID
	+NOSECTOR
	RenderStyle None
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(801) == 0, "EasySpawn")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(801) == 1, "NormalSpawn")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(801) == 2, "MediumSpawn") 
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(801) == 3, "HardSpawn")
		Stop
	EasySpawn:
		TNT1 A 1 A_SpawnItemEx("Hitler2Easy")
		Stop
	NormalSpawn:
		TNT1 A 1 A_SpawnItemEx("Hitler2Normal")
		Stop
	MediumSpawn:
		TNT1 A 1 A_SpawnItemEx("Hitler2Medium")
		Stop
	HardSpawn:
		TNT1 A 1 A_SpawnItemEx("Hitler2Hard")
		Stop
	}
}
ACTOR Hitler2Easy
{
	Health 400
	Radius 26
	Height 56
	DeathHeight 0
	Speed 4
	Mass 10000
	Painchance 0
	MONSTER 
	+FLOORCLIP
	+BOSS
	+JUSTHIT
	+NOTARGET
	+LOOKALLAROUND
	AttackSound "boss/attack"
	DeathSound "hitler2/death"
	Obituary "%o was killed by Adolf Hitler."
	BloodColor "FF 00 00"
	DamageFactor "WolfNazi", 0.0
	States
	{
	Spawn:
		WHR2 A 5 A_Look
		Loop
	See:
		WHR2 AAAAAABBBBBBCCCCCCDDDDDD 1 A_Chase
		Loop
	Missile:
		WHR2 G 10 A_FaceTarget
		WHR2 G 0 A_JumpIfCloser(96, "CloseShot")
		WHR2 G 0 A_JumpIfCloser(192, "MidShot")
		WHR2 H 5 BRIGHT A_CustomBulletAttack(5.0, 5.0, 1, ACS_ExecuteWithResult(800, 4), "WolfPuff")
		WHR2 G 0 A_CPosRefire
		WHR2 G 0 A_FaceTarget
		WHR2 I 5 BRIGHT A_CustomBulletAttack(5.0, 5.0, 1, ACS_ExecuteWithResult(800, 4), "WolfPuff")
		WHR2 G 0 A_CPosRefire
		WHR2 G 0 A_FaceTarget
		WHR2 H 5 BRIGHT A_CustomBulletAttack(5.0, 5.0, 1, ACS_ExecuteWithResult(800, 4), "WolfPuff")
		WHR2 G 0 A_CPosRefire
		WHR2 G 0 A_FaceTarget
		WHR2 I 5 BRIGHT A_CustomBulletAttack(5.0, 5.0, 1, ACS_ExecuteWithResult(800, 4), "WolfPuff")
		WHR2 G 0 A_CPosRefire
		WHR2 G 0 A_FaceTarget
		WHR2 H 5 BRIGHT A_CustomBulletAttack(5.0, 5.0, 1, ACS_ExecuteWithResult(800, 4), "WolfPuff")
		MissileResume:
		WHR2 G 5 A_CPosRefire
		WHR2 G 0 A_Jump(64,1)
		WHR2 AAAAAABBBBBBCCCCCCDDDDDD 1 A_Chase
		Goto Missile
		CloseShot:
			WHR2 H 5 BRIGHT A_CustomBulletAttack(3.0, 3.0, 1, ACS_ExecuteWithResult(800, 2), "WolfPuff")
			WHR2 G 0 A_CPosRefire
			WHR2 G 0 A_FaceTarget
			WHR2 I 5 BRIGHT A_CustomBulletAttack(3.0, 3.0, 1, ACS_ExecuteWithResult(800, 2), "WolfPuff")
			WHR2 G 0 A_CPosRefire
			WHR2 G 0 A_FaceTarget
			WHR2 H 5 BRIGHT A_CustomBulletAttack(3.0, 3.0, 1, ACS_ExecuteWithResult(800, 2), "WolfPuff")
			WHR2 G 0 A_CPosRefire
			WHR2 G 0 A_FaceTarget
			WHR2 I 5 BRIGHT A_CustomBulletAttack(3.0, 3.0, 1, ACS_ExecuteWithResult(800, 2), "WolfPuff")
			WHR2 G 0 A_CPosRefire
			WHR2 G 0 A_FaceTarget
			WHR2 H 5 BRIGHT A_CustomBulletAttack(3.0, 3.0, 1, ACS_ExecuteWithResult(800, 2), "WolfPuff")
			Goto MissileResume
		MidShot:
			WHR2 H 5 BRIGHT A_CustomBulletAttack(4.0, 4.0, 1, ACS_ExecuteWithResult(800, 3), "WolfPuff")
			WHR2 G 0 A_CPosRefire
			WHR2 G 0 A_FaceTarget
			WHR2 I 5 BRIGHT A_CustomBulletAttack(4.0, 4.0, 1, ACS_ExecuteWithResult(800, 3), "WolfPuff")
			WHR2 G 0 A_CPosRefire
			WHR2 G 0 A_FaceTarget
			WHR2 H 5 BRIGHT A_CustomBulletAttack(4.0, 4.0, 1, ACS_ExecuteWithResult(800, 3), "WolfPuff")
			WHR2 G 0 A_CPosRefire
			WHR2 G 0 A_FaceTarget
			WHR2 I 5 BRIGHT A_CustomBulletAttack(4.0, 4.0, 1, ACS_ExecuteWithResult(800, 3), "WolfPuff")
			WHR2 G 0 A_CPosRefire
			WHR2 G 0 A_FaceTarget
			WHR2 H 5 BRIGHT A_CustomBulletAttack(4.0, 4.0, 1, ACS_ExecuteWithResult(800, 3), "WolfPuff")
			Goto MissileResume
	Death:
		WHR2 A 60 A_Scream
		WHR2 J 5 A_Playsound("slurpie")
		WHR2 KLMNOP 5
		WHR2 Q 1 A_GiveToTarget("Points", 5000)
		WHR2 Q 60// ACS_ExecuteAlways(27, 0)
		WHR2 Q -1 A_BossDeath
		Stop
	}
}

ACTOR Hitler2Normal : Hitler2Easy
{
	Health 475
}

ACTOR Hitler2Medium : Hitler2Easy
{
	Health 525
}

ACTOR Hitler2Hard : Hitler2Easy
{
	Health 600
}

Actor HitlerGhost replaces Cacodemon 20006
{
	-SOLID
	+NOSECTOR
	RenderStyle None
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(801) == 0, "EasySpawn")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(801) == 1, "NormalSpawn")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(801) == 2, "MediumSpawn") 
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(801) == 3, "HardSpawn")
		Stop
	EasySpawn:
		TNT1 A 1 A_SpawnItemEx("HitlerGhostEasy")
		Stop
	NormalSpawn:
		TNT1 A 1 A_SpawnItemEx("HitlerGhostNormal")
		Stop
	MediumSpawn:
		TNT1 A 1 A_SpawnItemEx("HitlerGhostMedium")
		Stop
	HardSpawn:
		TNT1 A 1 A_SpawnItemEx("HitlerGhostHard")
		Stop
	}
}

ACTOR HitlerGhostEasy
{
	Health 200
	Radius 20
	Height 56
	DeathHeight 0
	Speed 4
	Mass 10000
	Painchance 50
	MONSTER 
	+NOGRAVITY
	+DROPOFF
	+SPAWNFLOAT
	+FLOAT
	+NORADIUSDMG
	+MISSILEMORE
	+AMBUSH
	+NOTARGET
	SeeSound "hgst/sight"
	AttackSound ""
	DeathSound "hgst/death"
	Obituary "%o was killed by Hitler's Ghost."
	Damage 4
	States
	{
	Spawn:
		WHGT A 5 A_Look
		Loop
	See:
		WHGT AAABBBBCCCCBBBB 1 A_Chase
	Missile:
		WHGT A 0 A_Jump(5,1)
		Goto See
		WHGT A 2 A_FaceTarget
		WHGT A 0 A_CposRefire
		WHGT E 1 BRIGHT A_CustomMissile ("GhostFireBall", 30, 0, 0)
		WHGT A 2 A_FaceTarget
		WHGT A 0 A_CposRefire
		WHGT E 1 BRIGHT A_CustomMissile ("GhostFireBall", 30, 0, 0)
		WHGT A 2 A_FaceTarget
		WHGT A 0 A_CposRefire
		WHGT E 1 BRIGHT A_CustomMissile ("GhostFireBall", 30, 0, 0)
		WHGT A 2 A_FaceTarget
		WHGT A 0 A_CposRefire
		WHGT E 1 BRIGHT A_CustomMissile ("GhostFireBall", 30, 0, 0)
		WHGT A 2 A_FaceTarget
		WHGT A 0 A_CposRefire
		WHGT E 1 BRIGHT A_CustomMissile ("GhostFireBall", 30, 0, 0)
		WHGT A 2 A_FaceTarget
		WHGT A 0 A_CposRefire
		WHGT E 1 BRIGHT A_CustomMissile ("GhostFireBall", 30, 0, 0)
		WHGT A 2 A_FaceTarget
		WHGT A 0 A_CposRefire
		WHGT E 1 BRIGHT A_CustomMissile ("GhostFireBall", 30, 0, 0)
		WHGT A 2 A_FaceTarget
		WHGT A 0 A_CposRefire
		WHGT E 1 BRIGHT A_CustomMissile ("GhostFireBall", 30, 0, 0)
		WHGT AAAABBBBCCCCBBBB 1 A_Wander
		Goto See
	Pain:
		WHGT A 6 A_Pain
		Goto See
	Death:
		WHGT F 5
		WHGT G 5 A_Scream
		WHGT HIJ 5
		WHGT K -1 A_GiveToTarget("Points", 2000)
		Stop
	}
}

ACTOR HitlerGhostNormal : HitlerGhostEasy
{
	Health 300
}

ACTOR HitlerGhostMedium : HitlerGhostEasy
{
	Health 400
}

ACTOR HitlerGhostHard : HitlerGhostEasy
{
	Health 500
}

ACTOR GhostFireBall : WolfRocket
{
	Speed 2
	SeeSound "flame/fire"
	DeathSound ""
	States
	{
	Spawn:
		BAL3 AB 4
		Loop
	Death:
		BAL3 A 0 A_Explode (16, 16, 1)
		Stop
	}
}

ACTOR Blinky 20020
{
	Radius 20
	Height 56
	Speed 5
	Mass 10000
	Painchance 0
	MONSTER
	+FLOAT
	+LOWGRAVITY
	+SPAWNFLOAT
	+INVULNERABLE
	+JUSTHIT
	+LOOKALLAROUND
	- COUNTKILL
	- CANPUSHWALLS
	- SOLID
	SeeSound "ghost/sight"
	ActiveSound "ghost/active"
	Obituary "%o was killed by a Pac-Man ghost."
	Meleedamage 1
	States
	{
	Spawn:
		GHO0 AAABBB 2 A_Look
		Loop
	See:
		GHO0 AAABBB 2 A_Chase
		Loop
	Melee:
		GHO0 A 0 A_FaceTarget
		GHO0 AAABBB 2 A_MeleeAttack
		Goto See
	}
}

ACTOR Inky : Blinky 20021
{
	States
	{
	Spawn:
		GHO1 AABB 5 A_Look
		Loop
	See:
		GHO1 AABB 2 A_Chase
		Loop
	Melee:
		GHO1 A 0 A_FaceTarget
		GHO1 AB 8 A_MeleeAttack
		Goto See
	}
}

ACTOR Pinky : Blinky 20022
{
	States
	{
	Spawn:
		GHO2 AABB 5 A_Look
		Loop
	See:
		GHO2 AABB 2 A_Chase
		Loop
	Melee:
		GHO2 A 0 A_FaceTarget
		GHO2 AB 8 A_MeleeAttack
		Goto See
	}
}

ACTOR Clyde : Blinky 20023
{
	States
	{
	Spawn:
		GHO3 AABB 5 A_Look
		Loop
	See:
		GHO3 AABB 2 A_Chase
		Loop
	Melee:
		GHO3 A 0 A_FaceTarget
		GHO3 AB 8 A_MeleeAttack
		Goto See
	}
}

//Episode 4

Actor Giftmacher 20013
{
	-SOLID
	+NOSECTOR
	RenderStyle None
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(801) == 0, "EasySpawn")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(801) == 1, "NormalSpawn")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(801) == 2, "MediumSpawn") 
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(801) == 3, "HardSpawn")
		Stop
	EasySpawn:
		TNT1 A 1 A_SpawnItemEx("GiftmacherEasy")
		Stop
	NormalSpawn:
		TNT1 A 1 A_SpawnItemEx("GiftmacherNormal")
		Stop
	MediumSpawn:
		TNT1 A 1 A_SpawnItemEx("GiftmacherMedium")
		Stop
	HardSpawn:
		TNT1 A 1 A_SpawnItemEx("GiftmacherHard")
		Stop
	}
}

ACTOR GiftmacherEasy
{
	Health 850
	Radius 26
	Height 56
	DeathHeight 0
	Speed 3
	Mass 10000
	Painchance 0
	MONSTER 
	+FLOORCLIP
	+NORADIUSDMG
	+BOSS
	+JUSTHIT
	+AMBUSH
	+NOTARGET
	+LOOKALLAROUND
	SeeSound "bos8/sight"
	DeathSound "bos8/death"
	Obituary "%o was killed by Otto Giftmacher."
	BloodColor "FF 00 00"
	DamageFactor "WolfNazi", 0.0
	States
	{
	Spawn:
		WBO8 A 5 A_Look
		Loop
	See:
		WBO8 AAAAAAAABBBBBBBBCCCCCCCCDDDDDDDD 1 A_Chase
		Loop
	Missile:
		WBO8 E 10 A_FaceTarget
		WBO8 F 5 BRIGHT A_CustomMissile ("WolfRocket", 30, 13, 0)
		WBO8 E 5 A_FaceTarget
		WBO8 E 0 A_CposRefire
		WBO8 E 0 A_Jump(192,3)
		WBO8 E 5 A_FaceTarget
		WBO8 F 5 BRIGHT A_CustomMissile ("WolfRocket", 30, 13, 0)
		WBO8 E 5 A_FaceTarget
		WBO8 AAAAAAAABBBBBBBBCCCCCCCCDDDDDDDD 1 A_Chase
		WBO8 E 0 A_CposRefire
		Loop
	Pain:
		WBO8 A 6 A_Pain
		Goto See
	Death:
		WBO8 A 60 A_Scream
		WBO8 GHI 5
		WBO8 J 1 A_GiveToTarget("Points", 5000)
		WBO8 J 60// ACS_ExecuteAlways(27, 0)
		WBO8 J -1 A_BossDeath
		Stop
	}
}

ACTOR GiftmacherNormal : GiftmacherEasy
{
	Health 950
}

ACTOR GiftmacherMedium : GiftmacherEasy
{
	Health 1050
}

ACTOR GiftmacherHard : GiftmacherEasy
{
	Health 1200
}

//Episode 5

Actor GretelGrosse 20014
{
	-SOLID
	+NOSECTOR
	RenderStyle None
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(801) == 0, "EasySpawn")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(801) == 1, "NormalSpawn")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(801) == 2, "MediumSpawn") 
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(801) == 3, "HardSpawn")
		Stop
	EasySpawn:
		TNT1 A 1 A_SpawnItemEx("GretelGrosseEasy")
		Stop
	NormalSpawn:
		TNT1 A 1 A_SpawnItemEx("GretelGrosseNormal")
		Stop
	MediumSpawn:
		TNT1 A 1 A_SpawnItemEx("GretelGrosseMedium")
		Stop
	HardSpawn:
		TNT1 A 1 A_SpawnItemEx("GretelGrosseHard")
		Stop
	}
}

ACTOR GretelGrosseEasy : HansGrosseEasy
{
	Health 850
	Radius 26
	Mass 10000
	+AMBUSH
	SeeSound "bos4/sight"
	AttackSound "shots/single"
	DeathSound "bos4/death"
	Obituary "%o was killed by Gretel Grosse."
	DamageFactor "WolfNazi", 0.0
	States
	{
	Spawn:
		WBO4 A 5 A_Look
		Loop
	See:
		WBO4 AAAAAABBBBBBCCCCCCDDDDDD 1 A_Chase
		Loop
	Missile:
		WBO4 E 10 A_FaceTarget
		WBO4 E 0 A_JumpIfCloser(96, "CloseShot")
		WBO4 E 0 A_JumpIfCloser(192, "MidShot")
		WBO4 F 5 BRIGHT A_CustomBulletAttack(5.0, 5.0, 1, ACS_ExecuteWithResult(800, 4), "WolfPuff")
		WBO4 E 0 A_CPosRefire
		WBO4 E 0 A_FaceTarget
		WBO4 G 5 BRIGHT A_CustomBulletAttack(5.0, 5.0, 1, ACS_ExecuteWithResult(800, 4), "WolfPuff")
		WBO4 E 0 A_CPosRefire
		WBO4 E 0 A_FaceTarget
		WBO4 F 5 BRIGHT A_CustomBulletAttack(5.0, 5.0, 1, ACS_ExecuteWithResult(800, 4), "WolfPuff")
		WBO4 E 0 A_CPosRefire
		WBO4 E 0 A_FaceTarget
		WBO4 G 5 BRIGHT A_CustomBulletAttack(5.0, 5.0, 1, ACS_ExecuteWithResult(800, 4), "WolfPuff")
		WBO4 E 0 A_CPosRefire
		WBO4 E 0 A_FaceTarget
		WBO4 F 5 BRIGHT A_CustomBulletAttack(5.0, 5.0, 1, ACS_ExecuteWithResult(800, 4), "WolfPuff")
		WBO4 E 0 A_CPosRefire
		WBO4 E 0 A_FaceTarget
		WBO4 G 5 BRIGHT A_CustomBulletAttack(5.0, 5.0, 1, ACS_ExecuteWithResult(800, 4), "WolfPuff")
		MissileResume:
		WBO4 E 0 A_CPosRefire
		WBO4 AAAAAABBBBBBCCCCCCDDDDDD 1 A_Chase
		Goto See
		CloseShot:
			WBO4 F 5 BRIGHT A_CustomBulletAttack(3.0, 3.0, 1, ACS_ExecuteWithResult(800, 2), "WolfPuff")
			WBO4 E 0 A_CPosRefire
			WBO4 E 0 A_FaceTarget
			WBO4 G 5 BRIGHT A_CustomBulletAttack(3.0, 3.0, 1, ACS_ExecuteWithResult(800, 2), "WolfPuff")
			WBO4 E 0 A_CPosRefire
			WBO4 E 0 A_FaceTarget
			WBO4 F 5 BRIGHT A_CustomBulletAttack(3.0, 3.0, 1, ACS_ExecuteWithResult(800, 2), "WolfPuff")
			WBO4 E 0 A_CPosRefire
			WBO4 E 0 A_FaceTarget
			WBO4 G 5 BRIGHT A_CustomBulletAttack(3.0, 3.0, 1, ACS_ExecuteWithResult(800, 2), "WolfPuff")
			WBO4 E 0 A_CPosRefire
			WBO4 E 0 A_FaceTarget
			WBO4 F 5 BRIGHT A_CustomBulletAttack(3.0, 3.0, 1, ACS_ExecuteWithResult(800, 2), "WolfPuff")
			WBO4 E 0 A_CPosRefire
			WBO4 E 0 A_FaceTarget
			WBO4 G 5 BRIGHT A_CustomBulletAttack(3.0, 3.0, 1, ACS_ExecuteWithResult(800, 2), "WolfPuff")
			Goto MissileResume
		MidShot:
			WBO4 F 5 BRIGHT A_CustomBulletAttack(4.0, 4.0, 1, ACS_ExecuteWithResult(800, 3), "WolfPuff")
			WBO4 E 0 A_CPosRefire
			WBO4 E 0 A_FaceTarget
			WBO4 G 5 BRIGHT A_CustomBulletAttack(4.0, 4.0, 1, ACS_ExecuteWithResult(800, 3), "WolfPuff")
			WBO4 E 0 A_CPosRefire
			WBO4 E 0 A_FaceTarget
			WBO4 F 5 BRIGHT A_CustomBulletAttack(4.0, 4.0, 1, ACS_ExecuteWithResult(800, 3), "WolfPuff")
			WBO4 E 0 A_CPosRefire
			WBO4 E 0 A_FaceTarget
			WBO4 G 5 BRIGHT A_CustomBulletAttack(4.0, 4.0, 1, ACS_ExecuteWithResult(800, 3), "WolfPuff")
			WBO4 E 0 A_CPosRefire
			WBO4 E 0 A_FaceTarget
			WBO4 F 5 BRIGHT A_CustomBulletAttack(4.0, 4.0, 1, ACS_ExecuteWithResult(800, 3), "WolfPuff")
			WBO4 E 0 A_CPosRefire
			WBO4 E 0 A_FaceTarget
			WBO4 G 5 BRIGHT A_CustomBulletAttack(4.0, 4.0, 1, ACS_ExecuteWithResult(800, 3), "WolfPuff")
			Goto MissileResume
	Pain:
		WBO4 D 6 A_Pain
		Goto See
	Death:
		WBO4 H 2 ACS_ExecuteAlways (25, 0, 2)
		WBO4 H 4 A_GiveToTarget("Points", 5000)
		WBO4 IJ 6 A_Scream
		WBO4 K -1
		Stop
	}
}

ACTOR GretelGrosseNormal : GretelGrosseEasy
{
	Health 950
}

ACTOR GretelGrosseMedium : GretelGrosseEasy
{
	Health 1550
}

ACTOR GretelGrosseHard : GretelGrosseEasy
{
	Health 2400
}

//Episode 6

Actor FatFace 20015
{
	-SOLID
	+NOSECTOR
	RenderStyle None
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(801) == 0, "EasySpawn")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(801) == 1, "NormalSpawn")
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(801) == 2, "MediumSpawn") 
		TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(801) == 3, "HardSpawn")
		Stop
	EasySpawn:
		TNT1 A 1 A_SpawnItemEx("FatFaceEasy")
		Stop
	NormalSpawn:
		TNT1 A 1 A_SpawnItemEx("FatFaceNormal")
		Stop
	MediumSpawn:
		TNT1 A 1 A_SpawnItemEx("FatFaceMedium")
		Stop
	HardSpawn:
		TNT1 A 1 A_SpawnItemEx("FatFaceHard")
		Stop
	}
}

ACTOR FatFaceEasy
{
	Health 850
	Radius 26
	Height 56
	DeathHeight 0
	Speed 4
	Mass 10000
	Painchance 0
	MONSTER 
	+FLOORCLIP
	+BOSS
	+NORADIUSDMG
	+LOOKALLAROUND
	+AMBUSH
	+JUSTHIT
	SeeSound "bos5/sight"
	AttackSound "boss/attack"
	DeathSound "bos5/death"
	Obituary "%o was killed by General Fettgesicht."
	BloodColor "FF 00 00"
	DamageFactor "WolfNazi", 0.0
	Damage 4
	States
	{
	Spawn:
		WBO5 A 5 A_Look
		Loop
	See:
		WBO5 AAAAABBBBBCCCCCDDDDD 1 A_Chase
		Loop
	Missile:
		WBO5 E 0 A_Jump (10, 3)
		WBO5 E 10 A_FaceTarget
		WBO5 F 5 BRIGHT A_CustomMissile ("WolfRocket", 30, 18, 0)
		WBO5 O 5 A_FaceTarget
		WBO5 O 0 A_JumpIfCloser(96, "CloseShot")
		WBO5 O 0 A_JumpIfCloser(192, "MidShot")
		WBO5 GH 5 BRIGHT A_CustomBulletAttack(5.0, 5.0, 1, ACS_ExecuteWithResult(800, 4), "WolfPuff")
		WBO5 O 0 A_CPosRefire
		WBO5 O 0 A_FaceTarget
		WBO5 GH 5 BRIGHT A_CustomBulletAttack(5.0, 5.0, 1, ACS_ExecuteWithResult(800, 4), "WolfPuff")
		MissileResume:
		WBO5 O 0 A_CPosRefire
		WBO5 AAAABBBBCCCCDDDD 1 A_Chase
		Goto Missile
		CloseShot:
			WBO5 GH 5 BRIGHT A_CustomBulletAttack(3.0, 3.0, 1, ACS_ExecuteWithResult(800, 2), "WolfPuff")
			WBO5 O 0 A_CPosRefire
			WBO5 O 0 A_FaceTarget
			WBO5 GH 5 BRIGHT A_CustomBulletAttack(3.0, 3.0, 1, ACS_ExecuteWithResult(800, 2), "WolfPuff")
			Goto MissileResume
		MidShot:
			WBO5 GH 5 BRIGHT A_CustomBulletAttack(4.0, 4.0, 1, ACS_ExecuteWithResult(800, 3), "WolfPuff")
			WBO5 O 0 A_CPosRefire
			WBO5 O 0 A_FaceTarget
			WBO5 GH 5 BRIGHT A_CustomBulletAttack(4.0, 4.0, 1, ACS_ExecuteWithResult(800, 3), "WolfPuff")
			Goto MissileResume
	Death:
		WBO5 A 60 A_Scream
		WBO5 JKL 5
		WBO5 M 1 A_GiveToTarget("Points", 5000)
		WBO5 M 60// ACS_ExecuteAlways(27, 0)
		WB05 M -1 A_BossDeath
		Stop
	}
}

ACTOR FatFaceNormal : FatFaceEasy
{
	Health 950
}

ACTOR FatFaceMedium : FatFaceEasy
{
	Health 1050
}

ACTOR FatFaceHard : FatFaceEasy
{
	Health 1200
}
