Actor Lurker : Bloodfiend
{
  RenderStyle Add
  Obituary "%o didn't See the lurker that was shooting at him."
  HitObituary "%o didn't See the lurker right in front of him."
  Alpha 0.35
  Tag "Lurker"
  +GHOST
  States
  {
  Spawn:
	TNT1 A 0
	TNT1 A 0 ACS_ExecuteAlways(DND_MONSTERSCALESCRIPT, 0, DND_LURKER, DND_GHOST)
Idle:
    SAR2 AB 10 A_Look
    Loop
  }
}

Actor FlameDemonGhost : FlameDemon
{
	Health 150
	Renderstyle Add
	Alpha 0.35
	Obituary "%o was charred by the ghostly flame demon."
	+GHOST
  States
  {
  Spawn:
	TNT1 A 0
	TNT1 A 0 ACS_ExecuteAlways(DND_MONSTERSCALESCRIPT, 0, DND_FLAMEDEMON, DND_GHOST | DND_EXPLOSIVE_IMMUNE)
Idle:
    SARG AB 10 A_Look
    Loop
  }
}

ACTOR NightmareSpectre : DnD_BaseEnemy
{
   Health 150
   Speed 16
   Height 56
   Radius 30
   Mass 400
   PainChance 120
   REACTIONTIME 8
   MONSTER
   +FLOORCLIP
   +GHOST
   +NOINFIGHTING
   +DONTBLAST
   +USEKILLSCRIPTS
   RENDERSTYLE ADD
   SeeSound "demon/sight"
   PainSound "demon/pain2"
   DeathSound "demon/death"
   ActiveSound "demon/active"
   AttackSound "demon/melee"
   HitObituary "%o was spooked by a nightmare spectre."
   DamageFactor "Demon", 0.0
   DamageFactor "DemonPoison_EarthGolem", 0.0
   DamageFactor "DemonFire", 0.0
   DamageFactor "DemonMagic", 0.0
   Translation "16:31=199:207", "32:47=240:247", "79:79=247:247", "80:111=96:111", "190:191=246:247", "210:223=194:199"
	Species "Demon"
	Tag "Nightmare Spectre"
	+DONTHURTSPECIES   
   States
   {
   Spawn:
		TNT1 A 0
		TNT1 A 0 ACS_ExecuteAlways(DND_MONSTERSCALESCRIPT, 0, DND_NIGHTMAREDEMON, DND_GHOST | DND_MOBILITY)
	Idle:
      SARG AB 8 A_Look
      Loop
   See:
      SARG AABBCCDD 2 Fast A_Chase
      Loop
   Melee:
      SARG EF 6 Fast A_FaceTarget
      SARG G 6 Fast A_CustomMeleeAttack(7 * random(1, 8) * (1.0 + ACS_NamedExecuteWithResult("DND Monster Damage Scale", DND_SELF)))
      Goto See
   Pain:
      SARG H 2 Fast
      SARG H 2 Fast A_Pain
      Goto See
   Death:
      SARG I 6
	  TNT1 A 0 ACS_ExecuteAlways(982, 0, 2)
      SARG J 6 A_Scream
	  TNT1 A 0 A_JumpIfInTargetInventory("Ability_SoulStealer", 1, "GiveSoul") 
   GaveSoul:
      SARG K 4
      SARG L 4 A_NoBlocking
      SARG M 4
      SARG N -1
      Stop
  GiveSoul:
  Death.BookOfTheDead:
    SARG K 1
	TNT1 A 0 A_SpawnItem("SoulEffectSpawner")
	TNT1 A 0 A_GiveToTarget("Souls", 1)  
  Goto GaveSoul	  
   Raise:
      TNT1 A 0 A_GiveInventory("Mo_Revived", 1)
      SARG NMLKJI 4
      Goto See
   }
}

Actor Gravedigger : Demon2x {
	Translation "0:255=%[0.00,0.00,0.00]:[0.64,0.55,1.02]", "0:15=0:15", "48:78=48:78", "80:111=80:111", "160:189=160:189", "224:231=224:231"
	+ALWAYSFAST
	+GHOST
    SeeSound "demon/sight"
    PainSound "demon/pain2"
    DeathSound "demon/death"
    ActiveSound "demon/active"
    AttackSound "demon/melee"
	Alpha 0.55
	Renderstyle Add
	Obituary "%o's grave was dug up by a Gravedigger."
	Tag "Gravedigger"
	States {
	  Spawn:
		TNT1 A 0
		TNT1 A 0 ACS_ExecuteAlways(DND_MONSTERSCALESCRIPT, 0, DND_GRAVEDIGGER, DND_MOBILITY | DND_GHOST)
	  Idle:
		SARG AB 10 A_Look
		Loop
	}
}

Actor Devourer : Demon2x {
	Translation  "0:255=%[0.00,0.00,0.00]:[0.52,0.45,0.34]", "48:78=48:78", "80:111=80:111", "160:189=160:189", "224:235=224:235"
	+ALWAYSFAST
	+NORADIUSDMG
	+GHOST
    SeeSound "demon/sight"
    PainSound "demon/pain2"
    DeathSound "demon/death"
    ActiveSound "demon/active"
    AttackSound "demon/melee"
	Alpha 0.95
	Renderstyle Add
	Health 175
	Painchance 96
	Obituary "%o was devoured by a hungry Devourer."
	Tag "Devourer"
	States {
	  Spawn:
		TNT1 A 0
		TNT1 A 0 ACS_ExecuteAlways(DND_MONSTERSCALESCRIPT, 0, DND_DEVOURER, DND_MOBILITY | DND_GHOST)
	  Idle:
		SARG AB 10 A_Look
		Loop
	}
}

Actor SoulEaterGhost : SoulEater {
	Renderstyle Add
	Alpha 0.35
    Obituary "%o had %p soul stolen by a ghost Soul Eater."
    HitObituary "%o was eaten by a ghost Soul Eater."
	+GHOST
  States
  {
  Spawn:
	TNT1 A 0
	TNT1 A 0 ACS_ExecuteAlways(DND_MONSTERSCALESCRIPT, 0, DND_SOULEATER, DND_GHOST)
Idle:
    SOEA AB 10 A_Look
    Loop
  }
}

Actor NhumCignGhost : NhumCign {
	RenderStyle Translucent
	Alpha 0.5
	+GHOST
	States {
		Spawn:
			TNT1 A 0
			TNT1 A 0 ACS_ExecuteAlways(964, 0, 1)
			TNT1 A 0 ACS_ExecuteAlways(DND_MONSTERSCALESCRIPT, 0, DND_NHUMCIGN, DND_MOBILITY | DND_RAGE | DND_GHOST)
		Idle:
			SOEA AB 10 A_Look
		Loop
	}
}