// Pistol Cultist --------------------------------------------------------------
Actor PistolCultist 14166
{
		Health 40
		Radius 20
		Height 56
		Speed 10
		PainChance 140
		Monster
		+FLOORCLIP
		+MISSILEMORE
		SeeSound "grunt/sight"
		AttackSound "grunt/attack"
		PainSound "grunt/pain"
		DeathSound "grunt/death"
		ActiveSound "grunt/active"
		Obituary "%o was killed by a Pistol Cultist."
		DropItem "Pistol"
	
 	States
	{
	Spawn:
		VDDC AB 10 A_Look
		Loop
	See:
		VDDC AABBCCDD 3 A_Chase
		Loop
	Missile:
		VDDC E 5 A_FaceTarget
		VDDC E 5 A_FaceTarget 
		VDDC F 5 bright A_PosAttack
		VDDC E 5 
		Goto See
	Pain:
		VDDC G 3
		VDDC G 3 A_Pain
		Goto See
	Death:
		VDDC H 5
		VDDC I 5 A_Scream
		VDDC J 5 A_NoBlocking
		VDDC K 5
		VDDC L -1
		Stop
	XDeath:
		VDDC M 5
		VDDC N 5 A_XScream
		VDDC O 5 A_NoBlocking
		VDDC PQRST 5
		VDDC U -1
		Stop
	Raise:
		VDDC K 5
		VDDC JIH 5
		Goto See
	}
}


// Shadow Cultist --------------------------------------------------------------
ACTOR ShadowCultist 14167
{
	Health 60
	Radius 20
	Height 56
	Speed 5
	PainChance 120
	+FLOORCLIP
	//+CANTSEEK
	//+SEEINVISIBLE
	+AVOIDMELEE
	+MISSILEMORE
	RenderStyle Translucent
	Alpha 0.8
	Monster
	SeeSound "Shadow/Sight"
	AttackSound "shotguy/attack"
	DeathSound "shotguy/death"
	ActiveSound "Shadow/Idle"
	PainSound "shotguy/pain"
	Obituary "%o didn't see the Shadow Cultist's bullet."
	GibHealth 30
	DropItem "Shotgun"
	
	States
	{
		Spawn:
			SHAH AB 10 A_Look
			loop
		See:
			SHAH AABBCCDD 2 A_Chase
			loop
		Missile:
			SHAG A 20 A_FaceTarget
			SHAG A 1 A_FaceTarget
			TNT1 A 0 A_SposAttackUseAtkSound //A_PlaySound("Shadow/Fire")
			SHAG B 1 A_CustomMissile("ShadowBullet", 32, 0, 0, CMF_OFFSETPITCH, 0)
			SHAG B 5 Bright
			SHAG A 10
			TNT1 A 0 A_Jump(256, "See")
			Goto See
		Pain:
			SHAP A 4 A_Pain
			Goto See
		Death:
			TNT1 A 0 A_Scream
			SHAD A 5 A_SetTranslucent(0.7,0)
			SHAD B 5 A_SetTranslucent(0.8,0)
			SHAD C 5 A_NoBlocking
			SHAD D 5 A_SetTranslucent(0.9,0)
			SHAD E 5 A_SetTranslucent(1,0)
			SHAD E -1
			Stop
		XDeath:
			TNT1 A 0 A_XScream
			SHXD A 4 A_SetTranslucent(0.7,0)
			SHXD B 4 A_SetTranslucent(0.8,0)
			SHXD C 4 A_NoBlocking
			SHXD D 4 A_SetTranslucent(0.9,0)
			SHXD E 4 A_SetTranslucent(1,0)
			SHXD F 4 A_SetTranslucent(1,0)
			SHXD G 4 A_SetTranslucent(1,0)
			SHXD H 4 A_SetTranslucent(1,0)			
			SHXD I -1
			Stop
		Raise:
			SHXD HGFEDCBA 4 A_SetTranslucent(0.8,0)
		Goto See
	}
}

ACTOR ShadowBullet 14168
{
	Radius 16
	Height 56
	Damage 3
	Speed 45
	Projectile
	States
	{
		Spawn:
			SSHO A 1
			loop
		Death:
			SSHO A 1
			Stop
	}
}


// Poltergeist -----------------------------------------------------------------

ACTOR Poltergeist1 14169
{
	Health 1
	Radius 8
	Height 14
	Mass 5
	Speed 0
	Painchance 0
	Monster
	Damage 3
	DeathSound "polt/break1"
	+NOBLOOD
	+DONTMORPH
	+DONTSQUASH
	-NOGRAVITY
	Obituary "%o was killed by a poltergeist."	
	States
	{
	Spawn:
		PLTG Z 10 A_LookEx (LOF_NOSOUNDCHECK, 0, 192, 0, 360)
		Loop
	See:
	    PLTG A 1 A_ChangeFlag("NOGRAVITY",1)
		PLTG A 1 A_PlaySoundEx ("polt/see", "Auto")
		PLTG A 0 Bright A_PlaySoundEx ("polt/light", "Auto")
		PLTG BCDBCD 3 Bright
	    PLTG BCD 3 Bright ThrustThingZ (0, Random (20, 24), 0, 0)
		PLTG BCD 3 Bright ThrustThingZ (0, Random (-7, -9), 0, 0)
		PLTG BCD 4 Bright ThrustThingZ (0, Random (9, 7), 0, 0)
		PLTG BCD 4 Bright ThrustThingZ (0, Random (-7, -9), 0, 0)
		PLTG BCD 5 Bright ThrustThingZ (0, Random (9, 7), 0, 0)
		PLTG BCD 5 Bright ThrustThingZ (0, Random (-7, -9), 0, 0)
		PLTG BCD 5 Bright ThrustThingZ (0, Random (9, 7), 0, 0)
		PLTG D 0 Bright ThrustThingZ (0, 0, 0, 0)
		TNT1 A 0 A_PlaySoundEx ("polt/throw", "Auto")
		Goto Missile
	Missile:
		PLTG D 0 Bright A_Facetarget
	    TNT1 A 0 A_Changeflag("NOGRAVITY",0)
		TNT1 A 0 A_SpawnItemEx("Poltshot1",0,0,0, Random(25, 45),0,Random (-6, -9))
		TNT1 A 0 A_GiveInventory("PoltDeath", 1)
		TNT1 A 0 A_Die
		Stop
	Death:
	    TNT1 A 0 A_JumpIfInventory("PoltDeath", 1, 8)
		PLTG A 0 Bright A_Scream
		TNT1 A 0 A_SpawnItemEx ("poltshard1", 0, 0, random (3, 5), random (-5, 5), random (-5, 5), random (1, 3), 0, 0, 30)
        TNT1 A 0 A_SpawnItemEx ("poltshard1", 0, 0, random (3, 5), random (-5, 5), random (-5, 5), random (1, 3), 0, 0, 30)
        TNT1 A 0 A_SpawnItemEx ("poltshard1", 0, 0, random (3, 5), random (-5, 5), random (-5, 5), random (1, 3), 0, 0, 30)
        TNT1 A 0 A_SpawnItemEx ("poltshard2", 0, 0, random (3, 5), random (-5, 5), random (-5, 5), random (1, 3), 0, 0, 30)
        TNT1 A 0 A_SpawnItemEx ("poltshard2", 0, 0, random (3, 5), random (-5, 5), random (-5, 5), random (1, 3), 0, 0, 30)
        TNT1 A 0 A_SpawnItemEx ("poltshard2", 0, 0, random (3, 5), random (-5, 5), random (-5, 5), random (1, 3), 0, 0, 30)
		TNT1 A 3
		TNT1 A 7 A_NoBlocking
		TNT1 A -1
		Stop
	}
}

ACTOR Poltshot1 14170
{
	Radius 8
	Height 14
	Speed 1
    FastSpeed 1
    Damage 3
    Projectile
	DeathSound "polt/break1"
    +RANDOMIZE
	-FLOAT
	-NOGRAVITY
	States
	{
	Spawn:
		PLTG BCD 3 Bright
		Loop
	Death:
		PLTG A 0 Bright A_Scream
		TNT1 A 0 A_NoBlocking
		TNT1 A 0 A_SpawnItemEx ("poltshard1", 0, 0, random (3, 5), random (-5, 5), random (-5, 5), random (1, 3), 0, 0, 30)
        TNT1 A 0 A_SpawnItemEx ("poltshard1", 0, 0, random (3, 5), random (-5, 5), random (-5, 5), random (1, 3), 0, 0, 30)
        TNT1 A 0 A_SpawnItemEx ("poltshard1", 0, 0, random (3, 5), random (-5, 5), random (-5, 5), random (1, 3), 0, 0, 30)
        TNT1 A 0 A_SpawnItemEx ("poltshard2", 0, 0, random (3, 5), random (-5, 5), random (-5, 5), random (1, 3), 0, 0, 30)
        TNT1 A 0 A_SpawnItemEx ("poltshard2", 0, 0, random (3, 5), random (-5, 5), random (-5, 5), random (1, 3), 0, 0, 30)
        TNT1 A 0 A_SpawnItemEx ("poltshard2", 0, 0, random (3, 5), random (-5, 5), random (-5, 5), random (1, 3), 0, 0, 30)
		TNT1 A 15
		TNT1 A 1 A_PlaySoundEx ("polt/laugh", "Auto")
		TNT1 A 1
		Stop
	}
}

ACTOR poltshard1 14171
{
  Radius 2
  Height 4
  speed 2
  mass 1
  RenderStyle Translucent
  Alpha 0.6
  +NOBLOCKMAP
  +MISSILE
  +NOTELEPORT
  +DONTSPLASH
  +NOICEDEATH
  States
  {
  Spawn:
    PLS1 ABC 4
    PLS1 D 4
    PLS1 ABC 4
    PLS1 D 4 A_Jump (24, "DeathA")
    PLS1 ABC 4
    PLS1 D 4
    PLS1 ABC 4
    PLS1 D 4 A_Jump (24, "DeatB")
    Loop
  DeathA:
    PLS1 C 5 A_Jump (80, "DeathA2")
    NULL A 1
    Stop
  DeathB:
    PLS1 D 5 A_Jump (80, "DeathB2")
    NULL A 1
    Stop
  DeathA2:
    PLS1 C 3 A_Jump (24, "DeathA2")
    NULL A 1
    Stop
  DeathB2:
    PLS1 D 5 A_Jump (24, "DeathB2")
    NULL A 1
    Stop
  }
}

ACTOR poltshard2 14172
{
  Radius 2
  Height 4
  speed 2
  mass 1
  RenderStyle Translucent
  Alpha 0.6
  +NOBLOCKMAP
  +MISSILE
  +NOTELEPORT
  +DONTSPLASH
  +NOICEDEATH
  States
  {
  Spawn:
    PLS2 ADB 4
    PLS2 C 4
    PLS2 ADB 4
    PLS2 C 4 A_Jump (24, "DeathA")
    PLS2 ADB 4
    PLS2 C 4
    PLS2 ADB 4
    PLS2 C 4 A_Jump (24, "DeathB")
    Loop
  DeathA:
    PLS2 C 5 A_Jump (80, "DeathA2")
    NULL A 1
    Stop
  DeathB:
    PLS2 D 5 A_Jump (80, "DeathB2")
    NULL A 1
    Stop
  DeathA2:
    PLS2 C 3 A_Jump (24, "DeathA2")
    NULL A 1
    Stop
  DeathB2:
    PLS2 D 5 A_Jump (24, "DeathB2")
    NULL A 1
    Stop
  }
}

ACTOR Poltergeist2 14173
{
	Health 20
	Radius 10
	Height 42
	Mass 45
	Speed 0
	Painchance 0
	Monster
	Damage 20
	DeathSound "world/barrelx"
	Obituary "%o was killed by a poltergeist."
	+NOBLOOD
	+DONTMORPH
	+DONTSQUASH
	-NOGRAVITY
	States
	{
	Spawn:
		BAR1 AB 6 A_LookEx (LOF_NOSOUNDCHECK, 0, 192, 0, 360)
		Loop
	See:
	    BAR1 A 1 A_ChangeFlag("NOGRAVITY",1)
		BAR1 A 1 A_PlaySoundEx ("polt/see", "Auto")
		BAR1 ABAB 6
	    BAR1 AAB 3 ThrustThingZ (0, Random (20, 24), 0, 0)
		BAR1 BBA 3 ThrustThingZ (0, Random (-7, -9), 0, 0)
		BAR1 AAB 4 ThrustThingZ (0, Random (9, 7), 0, 0)
		BAR1 BBA 4 ThrustThingZ (0, Random (-7, -9), 0, 0)
		BAR1 AB 6 ThrustThingZ (0, Random (9, 7), 0, 0)
		BAR1 AB 6 ThrustThingZ (0, Random (-7, -9), 0, 0)
		BAR1 AB 6 ThrustThingZ (0, Random (9, 7), 0, 0)
		TNT1 A 0 ThrustThingZ (0, 0, 0, 0)
		TNT1 A 0 A_PlaySoundEx ("polt/throw", "Auto")
		Goto Missile
	Missile:
		BAR1 A 0 A_Facetarget
	    TNT1 A 0 A_Changeflag("NOGRAVITY",0)
		TNT1 A 0 A_SpawnItemEx("Poltshot2",0,0,0, Random(25, 45),0,Random (-6, -9))
		TNT1 A 0 A_GiveInventory("PoltDeath", 1)
		TNT1 A 0 A_Die
		Stop
	Death:
	    TNT1 A 0 A_JumpIfInventory("PoltDeath", 1, 7)
		BEXP A 5 Bright
        BEXP B 5 Bright A_Scream
        BEXP C 5 Bright
        BEXP D 5 Bright A_Explode
        BEXP E 10 Bright
		TNT1 A 0 A_NoBlocking
		TNT1 A -1
		Stop
	}
}

ACTOR Poltshot2 14174
{
	Radius 10
	Height 42
	Speed 1
    FastSpeed 1
    Damage 5
    Projectile
	DeathSound "world/barrelx"
    +RANDOMIZE
	-FLOAT
	-NOGRAVITY
	States
	{
	Spawn:
		BAR1 AB 6
		Loop
	Death:
	    BEXP A 5 Bright
        BEXP B 5 Bright
        BEXP C 5 Bright
        BEXP D 5 Bright A_Explode
        BEXP E 10 Bright
		TNT1 A 15
		TNT1 A 1 A_PlaySoundEx ("polt/laugh", "Auto")
		TNT1 A -1
		Stop
	}
}

ACTOR PoltDeath : Inventory 14175
{
  Inventory.MaxAmount 1
  Inventory.Amount 1
}

// ammo poltergeists

ACTOR Poltergeist3 14176
{
	Health 20
	Radius 5
	Height 11
	Mass 45
	Speed 0
	Painchance 0
	Monster
	Damage 2
	Obituary "%o was killed by a poltergeist."
	DeathSound "polt/break1"
	
	+NOBLOOD
	+DONTMORPH
	+DONTSQUASH
	-NOGRAVITY
	States
	{
	Spawn:
		CLIP A 6 A_LookEx (LOF_NOSOUNDCHECK, 0, 192, 0, 360)
		CLIP A 6
		Loop
	See:
	    CLIP A 1 A_ChangeFlag("NOGRAVITY",1)
		CLIP A 1 A_PlaySoundEx ("polt/see", "Auto")
		CLIP AAAA 6
	    CLIP AAA 3 ThrustThingZ (0, Random (20, 24), 0, 0)
		CLIP AAA 3 ThrustThingZ (0, Random (-7, -9), 0, 0)
		CLIP AAA 4 ThrustThingZ (0, Random (9, 7), 0, 0)
		CLIP AAA 4 ThrustThingZ (0, Random (-7, -9), 0, 0)
		CLIP AA 6 ThrustThingZ (0, Random (9, 7), 0, 0)
		CLIP AA 6 ThrustThingZ (0, Random (-7, -9), 0, 0)
		CLIP AA 6 ThrustThingZ (0, Random (9, 7), 0, 0)
		CLIP A 0 ThrustThingZ (0, 0, 0, 0)
		CLIP A 0 A_PlaySoundEx ("polt/throw", "Auto")
		Goto Missile
	Missile:
		CLIP A 0 A_Facetarget
	    TNT1 A 0 A_Changeflag("NOGRAVITY",0)
		TNT1 A 0 A_SpawnItemEx("Poltshot3",0,0,0, Random(25, 45),0,Random (-6, -9))
		TNT1 A 0 A_GiveInventory("PoltDeath", 1)
		TNT1 A 0 A_Die
		Stop
	Death:
	    TNT1 A 0 A_JumpIfInventory("PoltDeath", 1, 4)
		TNT1 A 0 //A_SpawnItemEx ("Poltexplossmall2", 0, 0, 4)
		TNT1 A 3
		TNT1 A 0 A_Explode (2, 32)
		TNT1 A 3 A_NoBlocking
		TNT1 A -1
		Stop
	}
}

ACTOR Poltshot3 14177
{
	Radius 5
	Height 11
	Speed 1
    FastSpeed 1
    Damage 2
	DeathSound "polt/break1"
    Projectile
    +RANDOMIZE
	-FLOAT
	-NOGRAVITY
	States
	{
	Spawn:
		CLIP AAA 3
		Loop
	Death:
		TNT1 A 0 //A_SpawnItemEx ("Poltexplossmall2", 0, 0, 4)
		TNT1 A 3
		TNT1 A 0 A_Explode (2, 32)
		TNT1 A 3 A_NoBlocking
		TNT1 A 15
		TNT1 A 1 A_PlaySoundEx ("polt/laugh", "Auto")
		TNT1 A -1
		Stop
	}
}

ACTOR Poltergeist4 14178
{
	Health 20
	Radius 14
	Height 16
	Mass 45
	Speed 0
	Painchance 0
	Monster
	Damage 20
	Obituary "%o was killed by a poltergeist."
	+NOBLOOD
	+DONTMORPH
	+DONTSQUASH
	-NOGRAVITY
	States
	{
	Spawn:
		AMMO A 6 A_LookEx (LOF_NOSOUNDCHECK, 0, 192, 0, 360)
		AMMO A 6
		Loop
	See:
	    AMMO A 1 A_ChangeFlag("NOGRAVITY",1)
		AMMO A 1 A_PlaySoundEx ("polt/see", "Auto")
		AMMO AAAA 6
	    AMMO AAA 3 ThrustThingZ (0, Random (20, 24), 0, 0)
		AMMO AAA 3 ThrustThingZ (0, Random (-7, -9), 0, 0)
		AMMO AAA 4 ThrustThingZ (0, Random (9, 7), 0, 0)
		AMMO AAA 4 ThrustThingZ (0, Random (-7, -9), 0, 0)
		AMMO AA 6 ThrustThingZ (0, Random (9, 7), 0, 0)
		AMMO AA 6 ThrustThingZ (0, Random (-7, -9), 0, 0)
		AMMO AA 6 ThrustThingZ (0, Random (9, 7), 0, 0)
		AMMO A 0 ThrustThingZ (0, 0, 0, 0)
		AMMO A 0 A_PlaySoundEx ("polt/throw", "Auto")
		Goto Missile
	Missile:
		AMMO A 0 A_Facetarget
	    TNT1 A 0 A_Changeflag("NOGRAVITY",0)
		TNT1 A 0 A_SpawnItemEx("Poltshot4",0,0,0, Random(25, 45),0,Random (-6, -9))
		TNT1 A 0 A_GiveInventory("PoltDeath", 1)
		TNT1 A 0 A_Die
		Stop
	Death:
	    TNT1 A 0 A_JumpIfInventory("PoltDeath", 1, 4)
		TNT1 A 0 A_SpawnItemEx ("Poltexplossmall3", 0, 0, 4)
		TNT1 A 3
		TNT1 A 0 A_Explode (32, 64)
		TNT1 A 3 A_NoBlocking
		TNT1 A -1
		Stop
	}
}

ACTOR Poltshot4 14179
{
	Radius 14
	Height 16
	Speed 1
    FastSpeed 1
    Damage 5
    Projectile
    +RANDOMIZE
	-FLOAT
	-NOGRAVITY
	States
	{
	Spawn:
		AMMO AAA 3
		Loop
	Death:
		TNT1 A 0 A_SpawnItemEx ("Poltexplossmall3", 0, 0, 4)
		TNT1 A 3
		TNT1 A 0 A_Explode (32, 64)
		TNT1 A 3 A_NoBlocking
		TNT1 A 15
		TNT1 A 1 A_PlaySoundEx ("polt/laugh", "Auto")
		TNT1 A -1
		Stop
	}
}

ACTOR Poltergeist5 14180
{
	Health 20
	Radius 8
	Height 7
	Mass 45
	Speed 0
	Painchance 0
	Monster
	Damage 20
	Obituary "%o was killed by a poltergeist."
	+NOBLOOD
	+DONTMORPH
	+DONTSQUASH
	-NOGRAVITY
	States
	{
	Spawn:
		SHEL A 6 A_LookEx (LOF_NOSOUNDCHECK, 0, 192, 0, 360)
		SHEL A 6
		Loop
	See:
	    SHEL A 1 A_ChangeFlag("NOGRAVITY",1)
		SHEL A 1 A_PlaySoundEx ("polt/see", "Auto")
		SHEL AAAA 6
	    SHEL AAA 3 ThrustThingZ (0, Random (20, 24), 0, 0)
		SHEL AAA 3 ThrustThingZ (0, Random (-7, -9), 0, 0)
		SHEL AAA 4 ThrustThingZ (0, Random (9, 7), 0, 0)
		SHEL AAA 4 ThrustThingZ (0, Random (-7, -9), 0, 0)
		SHEL AA 6 ThrustThingZ (0, Random (9, 7), 0, 0)
		SHEL AA 6 ThrustThingZ (0, Random (-7, -9), 0, 0)
		SHEL AA 6 ThrustThingZ (0, Random (9, 7), 0, 0)
		SHEL A 0 ThrustThingZ (0, 0, 0, 0)
		SHEL A 0 A_PlaySoundEx ("polt/throw", "Auto")
		Goto Missile
	Missile:
		SHEL A 0 A_Facetarget
	    TNT1 A 0 A_Changeflag("NOGRAVITY",0)
		TNT1 A 0 A_SpawnItemEx("Poltshot5",0,0,0, Random(25, 45),0,Random (-6, -9))
		TNT1 A 0 A_GiveInventory("PoltDeath", 1)
		TNT1 A 0 A_Die
		Stop
	Death:
	    TNT1 A 0 A_JumpIfInventory("PoltDeath", 1, 4)
		TNT1 A 0 A_SpawnItemEx ("Poltexplossmall", 0, 0, 4)
		TNT1 A 3
		TNT1 A 0 A_Explode (32, 64)
		TNT1 A 3 A_NoBlocking
		TNT1 A -1
		Stop
	}
}

ACTOR Poltshot5 14181
{
	Radius 8
	Height 7
	Speed 1
    FastSpeed 1
    Damage 2
    Projectile
    +RANDOMIZE
	-FLOAT
	-NOGRAVITY
	States
	{
	Spawn:
		SHEL AAA 3
		Loop
	Death:
		TNT1 A 0 A_SpawnItemEx ("Poltexplossmall", 0, 0, 4)
		TNT1 A 3
		TNT1 A 0 A_Explode (32, 64)
		TNT1 A 3 A_NoBlocking
		TNT1 A 15
		TNT1 A 1 A_PlaySoundEx ("polt/laugh", "Auto")
		TNT1 A -1
		Stop
	}
}

ACTOR Poltergeist6 14182
{
	Health 20
	Radius 16
	Height 12
	Mass 45
	Speed 0
	Painchance 0
	Monster
	Damage 20
	Obituary "%o was killed by a poltergeist."
	+NOBLOOD
	+DONTMORPH
	+DONTSQUASH
	-NOGRAVITY
	States
	{
	Spawn:
		SBOX A 6 A_LookEx (LOF_NOSOUNDCHECK, 0, 192, 0, 360)
		SBOX A 6
		Loop
	See:
	    SBOX A 1 A_ChangeFlag("NOGRAVITY",1)
		SBOX A 1 A_PlaySoundEx ("polt/see", "Auto")
		SBOX AAAA 6
	    SBOX AAA 3 ThrustThingZ (0, Random (20, 24), 0, 0)
		SBOX AAA 3 ThrustThingZ (0, Random (-7, -9), 0, 0)
		SBOX AAA 4 ThrustThingZ (0, Random (9, 7), 0, 0)
		SBOX AAA 4 ThrustThingZ (0, Random (-7, -9), 0, 0)
		SBOX AA 6 ThrustThingZ (0, Random (9, 7), 0, 0)
		SBOX AA 6 ThrustThingZ (0, Random (-7, -9), 0, 0)
		SBOX AA 6 ThrustThingZ (0, Random (9, 7), 0, 0)
		SBOX A 0 ThrustThingZ (0, 0, 0, 0)
		SBOX A 0 A_PlaySoundEx ("polt/throw", "Auto")
		Goto Missile
	Missile:
		SBOX A 0 A_Facetarget
	    TNT1 A 0 A_Changeflag("NOGRAVITY",0)
		TNT1 A 0 A_SpawnItemEx("Poltshot6",0,0,0, Random(25, 45),0,Random (-6, -9))
		TNT1 A 0 A_GiveInventory("PoltDeath", 1)
		TNT1 A 0 A_Die
		Stop
	Death:
	    TNT1 A 0 A_JumpIfInventory("PoltDeath", 1, 4)
		TNT1 A 0 A_SpawnItemEx ("Poltexplossmall3", 0, 0, 4)
		TNT1 A 3
		TNT1 A 0 A_Explode (32, 64)
		TNT1 A 3 A_NoBlocking
		TNT1 A -1
		Stop
	}
}

ACTOR Poltshot6 14183
{
	Radius 16
	Height 12
	Speed 1
    FastSpeed 1
    Damage 5
    Projectile
    +RANDOMIZE
	-FLOAT
	-NOGRAVITY
	States
	{
	Spawn:
		SBOX AAA 10
		Loop
	Death:
		TNT1 A 0 A_SpawnItemEx ("Poltexplossmall3", 0, 0, 4)
		TNT1 A 3
		TNT1 A 0 A_Explode (32, 64)
		TNT1 A 3 A_NoBlocking
		TNT1 A 15
		TNT1 A 1 A_PlaySoundEx ("polt/laugh", "Auto")
		TNT1 A -1
		Stop
	}
}

ACTOR Poltergeist7 14184
{
	Health 20
	Radius 9
	Height 12
	Mass 45
	Speed 0
	Painchance 0
	Monster
	Damage 20
	DeathSound "weapons/plasmaf"
	Obituary "%o was killed by a poltergeist."
	+NOBLOOD
	+DONTMORPH
	+DONTSQUASH
	-NOGRAVITY
	States
	{
	Spawn:
		CELL A 6 A_LookEx (LOF_NOSOUNDCHECK, 0, 192, 0, 360)
		CELL A 6
		Loop
	See:
	    CELL A 1 A_ChangeFlag("NOGRAVITY",1)
		CELL A 1 A_PlaySoundEx ("polt/see", "Auto")
		CELL AAAA 6
	    CELL AAA 3 ThrustThingZ (0, Random (20, 24), 0, 0)
		CELL AAA 3 ThrustThingZ (0, Random (-7, -9), 0, 0)
		CELL AAA 4 ThrustThingZ (0, Random (9, 7), 0, 0)
		CELL AAA 4 ThrustThingZ (0, Random (-7, -9), 0, 0)
		CELL AA 6 ThrustThingZ (0, Random (9, 7), 0, 0)
		CELL AA 6 ThrustThingZ (0, Random (-7, -9), 0, 0)
		CELL AA 6 ThrustThingZ (0, Random (9, 7), 0, 0)
		CELL A 0 ThrustThingZ (0, 0, 0, 0)
		CELL A 0 A_PlaySoundEx ("polt/throw", "Auto")
		Goto Missile
	Missile:
		CELL A 0 A_Facetarget
	    TNT1 A 0 A_Changeflag("NOGRAVITY",0)
		TNT1 A 0 A_SpawnItemEx("Poltshot7",0,0,0, Random(25, 45),0,Random (-6, -9))
		TNT1 A 0 A_GiveInventory("PoltDeath", 1)
		TNT1 A 0 A_Die
		Stop
	Death:
	    TNT1 A 0 A_JumpIfInventory("PoltDeath", 1, 10)
		CELL A 0 A_Scream
		TNT1 A 0 A_SpawnItemEx ("PlasmaBall", 0, 0, 11, 25, 0, 0, random (-255, 255))
		TNT1 A 0 A_SpawnItemEx ("PlasmaBall", 0, 0, 11, 25, 0, 0, random (-255, 255))
		TNT1 A 0 A_SpawnItemEx ("PlasmaBall", 0, 0, 11, 25, 0, 0, random (-255, 255))
		TNT1 A 0 A_SpawnItemEx ("PlasmaBall", 0, 0, 11, 25, 0, 0, random (-255, 255))
		TNT1 A 0 A_SpawnItemEx ("PlasmaBall", 0, 0, 11, 25, 0, 0, random (-255, 255))
		TNT1 A 0 A_SpawnItemEx ("PlasmaBall", 0, 0, 11, 25, 0, 0, random (-255, 255))
		TNT1 A 0 A_SpawnItemEx ("PlasmaBall", 0, 0, 11, 25, 0, 0, random (-255, 255))
		TNT1 A 0 A_SpawnItemEx ("PlasmaBall", 0, 0, 11, 25, 0, 0, random (-255, 255))
		TNT1 A 3
		TNT1 A 7 A_NoBlocking
		TNT1 A -1
		Stop
	}
}

ACTOR Poltshot7 14185
{
	Radius 9
	Height 12
	Speed 1
    FastSpeed 1
    Damage 5
    Projectile
	DeathSound "weapons/plasmaf"
    +RANDOMIZE
	-FLOAT
	-NOGRAVITY
	States
	{
	Spawn:
		CELL AAA 3
		Loop
	Death:
		CELL A 0 A_Scream
		TNT1 A 0 A_NoBlocking
		TNT1 A 0 A_SpawnItemEx ("PlasmaBall", 0, 0, 11, 25, 0, 0, random (-255, 255))
		TNT1 A 0 A_SpawnItemEx ("PlasmaBall", 0, 0, 11, 25, 0, 0, random (-255, 255))
		TNT1 A 0 A_SpawnItemEx ("PlasmaBall", 0, 0, 11, 25, 0, 0, random (-255, 255))
		TNT1 A 0 A_SpawnItemEx ("PlasmaBall", 0, 0, 11, 25, 0, 0, random (-255, 255))
		TNT1 A 0 A_SpawnItemEx ("PlasmaBall", 0, 0, 11, 25, 0, 0, random (-255, 255))
		TNT1 A 0 A_SpawnItemEx ("PlasmaBall", 0, 0, 11, 25, 0, 0, random (-255, 255))
		TNT1 A 0 A_SpawnItemEx ("PlasmaBall", 0, 0, 11, 25, 0, 0, random (-255, 255))
		TNT1 A 0 A_SpawnItemEx ("PlasmaBall", 0, 0, 11, 25, 0, 0, random (-255, 255))
		TNT1 A 15
		TNT1 A 1 A_PlaySoundEx ("polt/laugh", "Auto")
		TNT1 A 1
		Stop
	}
}

ACTOR Poltergeist8 14186
{
	Health 20
	Radius 16
	Height 21
	Mass 45
	Speed 0
	Painchance 0
	Monster
	Damage 20
	Obituary "%o was killed by a poltergeist."
	+NOBLOOD
	+DONTMORPH
	+DONTSQUASH
	-NOGRAVITY
	States
	{
	Spawn:
		CELP A 6 A_LookEx (LOF_NOSOUNDCHECK, 0, 192, 0, 360)
		CELP A 6
		Loop
	See:
	    CELP A 1 A_ChangeFlag("NOGRAVITY",1)
		CELP A 1 A_PlaySoundEx ("polt/see", "Auto")
		CELP AAAA 6
	    CELP AAA 3 ThrustThingZ (0, Random (20, 24), 0, 0)
		CELP AAA 3 ThrustThingZ (0, Random (-7, -9), 0, 0)
		CELP AAA 4 ThrustThingZ (0, Random (9, 7), 0, 0)
		CELP AAA 4 ThrustThingZ (0, Random (-7, -9), 0, 0)
		CELP AA 6 ThrustThingZ (0, Random (9, 7), 0, 0)
		CELP AA 6 ThrustThingZ (0, Random (-7, -9), 0, 0)
		CELP AA 6 ThrustThingZ (0, Random (9, 7), 0, 0)
		CELP A 0 ThrustThingZ (0, 0, 0, 0)
		CELP A 0 A_PlaySoundEx ("polt/throw", "Auto")
		Goto Missile
	Missile:
		CELP A 0 A_Facetarget
	    TNT1 A 0 A_Changeflag("NOGRAVITY",0)
		TNT1 A 0 A_SpawnItemEx("Poltshot8",0,0,0, Random(25, 45),0,Random (-6, -9))
		TNT1 A 0 A_GiveInventory("PoltDeath", 1)
		TNT1 A 0 A_Die
		Stop
	Death:
	    TNT1 A 0 A_JumpIfInventory("PoltDeath", 1, 7)
		PL1D A 3 bright
		PL1D A 0 bright A_SpawnItemEx ("PoltexplosPL", 0, 0, 0)
		PL1D B 3 bright
		PL1D C 3 bright A_Explode (320, 196)
		PL1D DE 3 bright
		TNT1 A 3
		TNT1 A 7 A_NoBlocking
		TNT1 A -1
		Stop
	}
}

ACTOR Poltshot8 14187
{
	Radius 16
	Height 21
	Speed 1
    FastSpeed 1
    Damage 5
    Projectile
    +RANDOMIZE
	-FLOAT
	-NOGRAVITY
	States
	{
	Spawn:
		CELP AAA 3
		Loop
	Death:
		PL1D A 3 bright
		PL1D A 0 bright A_SpawnItemEx ("PoltexplosPL", 0, 0, 0)
		PL1D B 3 bright
		PL1D C 3 bright A_Explode (320, 196)
		PL1D DE 3 bright
		TNT1 A 3 A_NoBlocking
		TNT1 A 15
		TNT1 A 1 A_PlaySoundEx ("polt/laugh", "Auto")
		TNT1 A 1
		Stop
	}
}

ACTOR Poltergeist9 14188
{
	Health 10
	Radius 7
	Height 28
	Mass 45
	Speed 0
	Painchance 0
	Monster
	Damage 20
	DeathSound "weapons/rocklx"
	Obituary "%o was killed by a poltergeist."
	+NOBLOOD
	+DONTMORPH
	+DONTSQUASH
	-NOGRAVITY
	States
	{
	Spawn:
		ROCK A 6 A_LookEx (LOF_NOSOUNDCHECK, 0, 192, 0, 360)
		ROCK A 6
		Loop
	See:
	    ROCK A 1 A_ChangeFlag("NOGRAVITY",1)
		ROCK A 1 A_PlaySoundEx ("polt/see", "Auto")
		ROCK AAAA 6
	    ROCK AAA 3 ThrustThingZ (0, Random (20, 24), 0, 0)
		ROCK AAA 3 ThrustThingZ (0, Random (-7, -9), 0, 0)
		ROCK AAA 4 ThrustThingZ (0, Random (9, 7), 0, 0)
		ROCK AAA 4 ThrustThingZ (0, Random (-7, -9), 0, 0)
		ROCK AA 6 ThrustThingZ (0, Random (9, 7), 0, 0)
		ROCK AA 6 ThrustThingZ (0, Random (-7, -9), 0, 0)
		ROCK AA 6 ThrustThingZ (0, Random (9, 7), 0, 0)
		ROCK A 0 ThrustThingZ (0, 0, 0, 0)
		ROCK A 0 A_PlaySoundEx ("polt/throw", "Auto")
		Goto Missile
	Missile:
		ROCK A 0 A_Facetarget
	    TNT1 A 0 A_Changeflag("NOGRAVITY",0)
		TNT1 A 0 A_SpawnItemEx("Poltshot9",0,0,0, Random(25, 45),0,Random (-6, -9))
		TNT1 A 0 A_GiveInventory("PoltDeath", 1)
		TNT1 A 0 A_Die
		Stop
	Death:
	    TNT1 A 0 A_JumpIfInventory("PoltDeath", 1, 5)
		TNT1 A 0 A_Scream
		MISL B 8 Bright A_Explode
        MISL C 6 Bright
        MISL D 4 Bright
		TNT1 A 0 A_NoBlocking
		TNT1 A -1
		Stop
	}
}

ACTOR Poltshot9 14189
{
	Radius 6
	Height 28
	Speed 1
    FastSpeed 1
    Damage 20
    Projectile
	DeathSound "weapons/rocklx"
    +RANDOMIZE
	-FLOAT
	-NOGRAVITY
	States
	{
	Spawn:
		ROCK AAA 3
		Loop
	Death:
        MISL B 8 Bright A_Explode
        MISL C 6 Bright
        MISL D 4 Bright
		TNT1 A 0 A_NoBlocking
		TNT1 A 15
		TNT1 A 1 A_PlaySoundEx ("polt/laugh", "Auto")
		TNT1 A 1
		Stop
	}
}


ACTOR PoltexplosPL 14190
{
	Radius 1
	Height 1
	DeathSound "bigplasma/explode"
	-FLOAT
	-NOGRAVITY
	scale 0.75
	States
	{
	Spawn:
		TNT1 A 0
		goto Death
	Death:
        PLTX A 4 Bright A_Scream
        PLTX BCDEF 4 Bright
		TNT1 A 0 A_NoBlocking
		Stop
	}
}

ACTOR Poltexplos 14191
{
	Radius 1
	Height 1
	DeathSound "weapons/rocklx"
	-FLOAT
	-NOGRAVITY
	States
	{
	Spawn:
		TNT1 A 0
		goto Death
	Death:
        MISL B 8 Bright A_Scream
        MISL C 6 Bright
        MISL D 4 Bright
		TNT1 A 0 A_NoBlocking
		Stop
	}
}

ACTOR Poltexplossmall 14192
{
	Radius 1
	Height 1
	scale 0.25
	-FLOAT
	-NOGRAVITY
	DeathSound "weapons/rocklx"
	States
	{
	Spawn:
		TNT1 A 0
		goto Death
	Death:
        MISL B 8 Bright A_Scream
        MISL C 6 Bright
        MISL D 4 Bright
		TNT1 A 0 A_NoBlocking
		Stop
	}
}

ACTOR Poltexplossmall2 14193
{
	Radius 1
	Height 1
	scale 0.15
	-FLOAT
	-NOGRAVITY
	DeathSound "weapons/rocklx"
	States
	{
	Spawn:
		TNT1 A 0
		goto Death
	Death:
        MISL B 8 Bright A_Scream
        MISL C 6 Bright
        MISL D 4 Bright
		TNT1 A 0 A_NoBlocking
		Stop
	}
}

ACTOR Poltexplossmall3 14194
{
	Radius 1
	Height 1
	scale 0.40
	-FLOAT
	-NOGRAVITY
	DeathSound "weapons/rocklx"
	States
	{
	Spawn:
		TNT1 A 0
		goto Death
	Death:
        MISL B 8 Bright A_Scream
        MISL C 6 Bright
        MISL D 4 Bright
		TNT1 A 0 A_NoBlocking
		Stop
	}
}

ACTOR Poltergeist10 14195
{
	Health 20
	Radius 27
	Height 21
	Mass 45
	Speed 0
	Painchance 0
	Monster
	Damage 20
	DeathSound "polt/break1"
	Obituary "%o was killed by a poltergeist."
	+NOBLOOD
	+DONTMORPH
	+DONTSQUASH
	-NOGRAVITY
	States
	{
	Spawn:
		BROK A 6 A_LookEx (LOF_NOSOUNDCHECK, 0, 192, 0, 360)
		BROK A 6
		Loop
	See:
	    BROK A 1 A_ChangeFlag("NOGRAVITY",1)
		BROK A 1 A_PlaySoundEx ("polt/see", "Auto")
		BROK AAAA 6
	    BROK AAA 3 ThrustThingZ (0, Random (20, 24), 0, 0)
		BROK AAA 3 ThrustThingZ (0, Random (-7, -9), 0, 0)
		BROK AAA 4 ThrustThingZ (0, Random (9, 7), 0, 0)
		BROK AAA 4 ThrustThingZ (0, Random (-7, -9), 0, 0)
		BROK AA 6 ThrustThingZ (0, Random (9, 7), 0, 0)
		BROK AA 6 ThrustThingZ (0, Random (-7, -9), 0, 0)
		BROK AA 6 ThrustThingZ (0, Random (9, 7), 0, 0)
		BROK A 0 ThrustThingZ (0, 0, 0, 0)
		BROK A 0 A_PlaySoundEx ("polt/throw", "Auto")
		Goto Missile
	Missile:
		BROK A 0 A_Facetarget
	    TNT1 A 0 A_Changeflag("NOGRAVITY",0)
		TNT1 A 0 A_SpawnItemEx("Poltshot10",0,0,0, Random(25, 45),0,Random (-6, -9))
		TNT1 A 0 A_GiveInventory("PoltDeath", 1)
		TNT1 A 0 A_Die
		Stop
	Death:
	    TNT1 A 0 A_JumpIfInventory("PoltDeath", 1, 8)
		BROK A 0 A_Explode (320, 196)
		BROK A 0 A_NoBlocking
		BROK A 3 A_SpawnItemEx ("Poltexplos", random (-36, 36), random (-36, 36), random (0, 21))
        BROK A 3 A_SpawnItemEx ("Poltexplos", random (-36, 36), random (-36, 36), random (0, 21))
		BROK A 3 A_SpawnItemEx ("Poltexplos", random (-36, 36), random (-36, 36), random (0, 21))
		BROK A 3 A_SpawnItemEx ("Poltexplos", random (-36, 36), random (-36, 36), random (0, 21))
		BROK A 3 A_SpawnItemEx ("Poltexplos", random (-36, 36), random (-36, 36), random (0, 21))
		TNT1 A 3
		TNT1 A -1
		Stop
	}
}

ACTOR Poltshot10 14196
{
	Radius 27
	Height 21
	Speed 1
    FastSpeed 1
    Damage 10
    Projectile
    +RANDOMIZE
	-FLOAT
	-NOGRAVITY
	States
	{
	Spawn:
		BROK AAA 3
		Loop
	Death:
		BROK A 0 A_Explode (320, 196)
		BROK A 0 A_NoBlocking
		BROK A 3 A_SpawnItemEx ("Poltexplos", random (-36, 36), random (-36, 36), random (0, 21))
        BROK A 3 A_SpawnItemEx ("Poltexplos", random (-36, 36), random (-36, 36), random (0, 21))
		BROK A 3 A_SpawnItemEx ("Poltexplos", random (-36, 36), random (-36, 36), random (0, 21))
		BROK A 3 A_SpawnItemEx ("Poltexplos", random (-36, 36), random (-36, 36), random (0, 21))
		BROK A 3 A_SpawnItemEx ("Poltexplos", random (-36, 36), random (-36, 36), random (0, 21))
		TNT1 A 15
		TNT1 A 1 A_PlaySoundEx ("polt/laugh", "Auto")
		TNT1 A 1
		Stop
	}
}

// Brown Satyr ----------------------------------------------------------------------
ACTOR BrownSatyr 14197
{
    Health 80
    Radius 18
    Height 48
    Scale 0.75
    Speed 8
    PainChance 50
    Mass 350
    SeeSound "brownsatyr/sight"
    PainSound "knight/pain"
    DeathSound "brownsatyr/death"
    ActiveSound "knight/active"
	Obituary "%o burned alive by a brown satyr."
    HitObituary "%o was scratched to death by a brown satyr."
    MONSTER
    +FLOORCLIP

  States
  {
  Spawn:
    STYR AB 10 A_Look
    Loop
  See:
    STYR AABBCCDD 3 A_Chase
    Loop
  Melee:
    STYR EF 6 A_FaceTarget
    STYR G 6 A_CustomMeleeAttack(2*Random(1, 8), "Baron/Melee")
    STYR PQ 5 A_FaceTarget
    STYR R 6 A_CustomMeleeAttack(2*Random(1, 8), "Baron/Melee")
    Goto See
  Missile:
	STYR EF 8 A_FaceTarget
	STYR G 6 A_TroopAttack 
	Goto See
  Pain:
    STYR H 2
    STYR H 2 A_Pain
    Goto See
  Death:
    STYR I 5
    STYR J 5 A_Scream
    STYR K 6
    STYR L 7 A_Fall
    STYR M 4
    STYR N 4
    STYR O -1
    Stop
  Raise:
    STYR ONMLKJI 8
    Goto See
    }
}

// Dark Satyr ----------------------------------------------------------------------
ACTOR DarkSatyr 14198
{
    Health 140
    Radius 18
    Height 48
    Scale 0.75
    Speed 12
    PainChance 50
    Mass 350
    SeeSound "brownsatyr/sight"
    PainSound "knight/pain"
    DeathSound "brownsatyr/death"
    ActiveSound "knight/active"
    HitObituary "%o was mauled by a dark satyr."
    MONSTER
    +FLOORCLIP

  States
  {
  Spawn:
    OSTT AB 10 A_Look
    Loop
  See:
    OSTT AABBCCDD 3 A_Chase
    Loop
  Melee:
    OSTT EF 6 A_FaceTarget
    OSTT G 6 A_CustomMeleeAttack(3*Random(1, 8), "Baron/Melee")
    OSTT PQ 5 A_FaceTarget
    OSTT R 6 A_CustomMeleeAttack(3*Random(1, 8), "Baron/Melee")
    Goto See
  Pain:
    OSTT H 2
    OSTT H 2 A_Pain
    Goto See
  Death:
    OSTT I 5
    OSTT J 5 A_Scream
    OSTT K 6
    OSTT L 7 A_Fall
    OSTT M 4
    OSTT N 4
    OSTT O -1
    Stop
  Raise:
    OSTT ONMLKJI 8
    Goto See
    }
}

Actor ZombieHound 14199
{
  Health 160
  PainChance 128
  Speed 7
  Radius 30
  Height 50
  Mass 500
  MeleeDamage 2
  MaxTargetRange 256
  Monster
  +FloorClip
  +DontHurtSpecies
  HitObituary "%o was crunched by a Zombie Hound."
  SeeSound "monster/dogsit"
  AttackSound "monster/dogatk"
  MeleeSound "monster/dogbit" 
  PainSound "monster/dogpai" 
  DeathSound "monster/dogdth" 
  ActiveSound "monster/dogact"
  States
  {
  Spawn:
    HDOG A 10 A_Look
    Loop
  See:
    HDOG AAAABBBBCCCCDDDDEEEEFFFF 1 A_Chase
    Loop
  Melee:
    HDOG GH 6 A_FaceTarget
    HDOG I 6 A_MeleeAttack
    Goto See
  Pain:
    HDOG J 2
    HDOG J 2 A_Pain
    Goto See
  Death:
    HDOG K 8
    HDOG L 8 A_Scream
    HDOG M 4
    HDOG N 4 A_NoBlocking
    HDOG OP 4
    HDOG Q -1
    Stop
  Raise:
    HDOG QPONMLK 5
    Goto See
  }
}
