actor DRImp : DoomImp
{
  Speed 10
  Health 100
  GibHealth -50
  Radius 16
  Height 64
  Mass 100
  PainChance 180
  MaxStepHeight 24
  MaxDropOffHeight 64
  SeeSound "impsight"
  ActiveSound "impactive"
  PainSound "imppain"
  DeathSound "impdeath"
  HitObituary "%o was slayed by a Imp"
  Species Monsters
  Scale 0.85
  MONSTER
  +DONTHURTSPECIES
  +SLIDESONWALLS
  +THRUSPECIES
  +DROPOFF
  -FASTER
  -FASTMELEE
  +NEVERFAST
  states
  {
  Spawn:
    CYBI ABCDEFGHIJKLMNOPQRSTUVWXYZ 2 A_Look
	CYBU ABCDEFGHIJKLM 2 A_Look
    loop
  See:
    CYBW ABCDE 1 A_Chase("Melee",0)
	CYBW E 0 A_JumpIf(momz<-1,"JumpLoop")
	CYBW FGHIJ 1 A_Chase("Melee",0)
	CYBW J 0 A_JumpIf(momz<-1,"JumpLoop")
	CYBW KLMN 1 A_Chase("Melee",0)
	CYBW N 0 A_JumpIf(momz<-1,"JumpLoop")
    loop
  JumpLoop:
	ZOMJ A 0 A_Recoil(-1)
	ZOMJ A 1 A_CheckFloor("Land")
	Loop
  Land: 
	ZOMJ BCDEFGHIJK 2
	Goto See
  Pain:
    CYBI A 1 A_Pain
    goto See
  Melee:
    CYBF ABCDEFGHIJKLMNOPQR 1 A_FaceTarget
	CYBF S 1 A_CustomMeleeAttack(5,"impmelee","weapons/fistswing",normal,1)
	CYBF TUV 1
	goto See
  Death:
	IMPD A 0 A_ScreamAndUnblock
	IMPD A 4
	IMPD BCDEFGH 4
	IMPD I 700
	IMPD IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII 1 A_FadeOut(0.06)
	stop
  XDeath:
	TNT1 A 0 A_CustomMissile ("XDeathHead", 32, 0, random (0, 360), 2, random (67, 160))
	TNT1 A 0 A_CustomMissile ("XDeath11", 32, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath21", 32, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath31", 32, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath41", 32, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath51", 32, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath61", 32, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath71", 32, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath81", 32, 0, random (0, 360), 2, random (0, 160))
	NADA A 1 A_XScream
	Stop
  Raise:
  Stop
  }
}

ACTOR DRImpMob replaces DoomImp
{
  //$Category MobSpawners
  Radius 16
  Height 56
  Mass 0x7FFFFFFF
  MONSTER
  +LOOKALLAROUND
  -SOLID
  +NONSHOOTABLE
  -SHOOTABLE
  States
  {
  Spawn:
	NADA A 1 A_Look
	Loop
  See:
	NADA A 1
	NADA A 8 A_SpawnItemEx("DRImp", 0, 0, 0, 0, 0, 0, Random(0, 360))
	NADA A 8 A_SpawnItemEx("DRImp", 0, 0, 0, 0, 0, 0, Random(0, 360))
	NADA A 1 A_Die
    Stop
  Death:
	NADA A 1 A_ScreamAndUnblock
	NADA A 1
	Stop
  }
}

ACTOR DRLostSoul : LostSoul replaces LostSoul
{
	Health 100
	Radius 16
	Height 32
	Mass 30
	Speed 3
	Damage 2
	MeleeDamage 2
	PainChance 100
	RenderStyle Normal
	ReactionTime 128
	MinMissileChance 200
	Species Monsters
	MONSTER
	+FLOAT
	+NOGRAVITY
	+DONTFALL
	+NOICEDEATH
	+DONTHURTSPECIES
	+SLIDESONWALLS
	-FASTER
	-FASTMELEE
	+NEVERFAST
	AttackSound "skullmelee"
	PainSound "skullpain"
	DeathSound "skulldeath"
	ActiveSound "skullactive"
	Obituary "$OB_SKULL"
	States
	{
	Spawn:
		SKUL A 1 BRIGHT A_Look
		Loop
	See:
	    SKUL C 1 BRIGHT A_Chase
		SKUL C 0 BRIGHT A_SpawnItemEx("SFireTrail1",-12,0,16, (0.1)*Random(5, 15), (0.1)*Random(-5, 5), (0.1)*Random(-5, 5), Random(-8, 8), 128)
		SKUL C 0 BRIGHT A_SpawnItemEx("SFireTrail2",-12,0,16, (0.1)*Random(5, 15), (0.1)*Random(-5, 5), (0.1)*Random(-5, 5), Random(-8, 8), 128)
		SKUL C 0 BRIGHT A_SpawnItemEx("SFireTrail3",-12,0,16, (0.1)*Random(5, 15), (0.1)*Random(-5, 5), (0.1)*Random(-5, 5), Random(-8, 8), 128)
		Loop
	Missile:
		SKUL B 2 BRIGHT A_FaceTarget
		SKUL B 0 BRIGHT A_SpawnItemEx("SFireTrail1",-12,0,16, (0.1)*Random(5, 15), (0.1)*Random(-5, 5), (0.1)*Random(-5, 5), Random(-8, 8), 128)
		SKUL B 0 BRIGHT A_SpawnItemEx("SFireTrail2",-12,0,16, (0.1)*Random(5, 15), (0.1)*Random(-5, 5), (0.1)*Random(-5, 5), Random(-8, 8), 128)
		SKUL B 0 BRIGHT A_SpawnItemEx("SFireTrail3",-12,0,16, (0.1)*Random(5, 15), (0.1)*Random(-5, 5), (0.1)*Random(-5, 5), Random(-8, 8), 128)
		SKUL B 2 BRIGHT A_FaceTarget
		SKUL B 0 BRIGHT A_SpawnItemEx("SFireTrail1",-12,0,16, (0.1)*Random(5, 15), (0.1)*Random(-5, 5), (0.1)*Random(-5, 5), Random(-8, 8), 128)
		SKUL B 0 BRIGHT A_SpawnItemEx("SFireTrail2",-12,0,16, (0.1)*Random(5, 15), (0.1)*Random(-5, 5), (0.1)*Random(-5, 5), Random(-8, 8), 128)
		SKUL B 0 BRIGHT A_SpawnItemEx("SFireTrail3",-12,0,16, (0.1)*Random(5, 15), (0.1)*Random(-5, 5), (0.1)*Random(-5, 5), Random(-8, 8), 128)
		SKUL B 2 BRIGHT A_FaceTarget
		SKUL B 0 BRIGHT A_SpawnItemEx("SFireTrail1",-12,0,16, (0.1)*Random(5, 15), (0.1)*Random(-5, 5), (0.1)*Random(-5, 5), Random(-8, 8), 128)
		SKUL B 0 BRIGHT A_SpawnItemEx("SFireTrail2",-12,0,16, (0.1)*Random(5, 15), (0.1)*Random(-5, 5), (0.1)*Random(-5, 5), Random(-8, 8), 128)
		SKUL B 0 BRIGHT A_SpawnItemEx("SFireTrail3",-12,0,16, (0.1)*Random(5, 15), (0.1)*Random(-5, 5), (0.1)*Random(-5, 5), Random(-8, 8), 128)
		SKUL B 2 BRIGHT A_FaceTarget
		SKUL B 0 BRIGHT A_SpawnItemEx("SFireTrail1",-12,0,16, (0.1)*Random(5, 15), (0.1)*Random(-5, 5), (0.1)*Random(-5, 5), Random(-8, 8), 128)
		SKUL B 0 BRIGHT A_SpawnItemEx("SFireTrail2",-12,0,16, (0.1)*Random(5, 15), (0.1)*Random(-5, 5), (0.1)*Random(-5, 5), Random(-8, 8), 128)
		SKUL B 0 BRIGHT A_SpawnItemEx("SFireTrail3",-12,0,16, (0.1)*Random(5, 15), (0.1)*Random(-5, 5), (0.1)*Random(-5, 5), Random(-8, 8), 128)
		SKUL B 2 BRIGHT A_FaceTarget
		SKUL B 0 BRIGHT A_SpawnItemEx("SFireTrail1",-12,0,16, (0.1)*Random(5, 15), (0.1)*Random(-5, 5), (0.1)*Random(-5, 5), Random(-8, 8), 128)
		SKUL B 0 BRIGHT A_SpawnItemEx("SFireTrail2",-12,0,16, (0.1)*Random(5, 15), (0.1)*Random(-5, 5), (0.1)*Random(-5, 5), Random(-8, 8), 128)
		SKUL B 0 BRIGHT A_SpawnItemEx("SFireTrail3",-12,0,16, (0.1)*Random(5, 15), (0.1)*Random(-5, 5), (0.1)*Random(-5, 5), Random(-8, 8), 128)
		SKUL B 2 BRIGHT A_FaceTarget
		SKUL B 0 BRIGHT A_SpawnItemEx("SFireTrail1",-12,0,16, (0.1)*Random(5, 15), (0.1)*Random(-5, 5), (0.1)*Random(-5, 5), Random(-8, 8), 128)
		SKUL B 0 BRIGHT A_SpawnItemEx("SFireTrail2",-12,0,16, (0.1)*Random(5, 15), (0.1)*Random(-5, 5), (0.1)*Random(-5, 5), Random(-8, 8), 128)
		SKUL B 0 BRIGHT A_SpawnItemEx("SFireTrail3",-12,0,16, (0.1)*Random(5, 15), (0.1)*Random(-5, 5), (0.1)*Random(-5, 5), Random(-8, 8), 128)
		SKUL B 2 BRIGHT A_FaceTarget
		SKUL B 0 BRIGHT A_SpawnItemEx("SFireTrail1",-12,0,16, (0.1)*Random(5, 15), (0.1)*Random(-5, 5), (0.1)*Random(-5, 5), Random(-8, 8), 128)
		SKUL B 0 BRIGHT A_SpawnItemEx("SFireTrail2",-12,0,16, (0.1)*Random(5, 15), (0.1)*Random(-5, 5), (0.1)*Random(-5, 5), Random(-8, 8), 128)
		SKUL B 0 BRIGHT A_SpawnItemEx("SFireTrail3",-12,0,16, (0.1)*Random(5, 15), (0.1)*Random(-5, 5), (0.1)*Random(-5, 5), Random(-8, 8), 128)
		SKUL B 2 BRIGHT A_FaceTarget
		SKUL B 0 BRIGHT A_SpawnItemEx("SFireTrail1",-12,0,16, (0.1)*Random(5, 15), (0.1)*Random(-5, 5), (0.1)*Random(-5, 5), Random(-8, 8), 128)
		SKUL B 0 BRIGHT A_SpawnItemEx("SFireTrail2",-12,0,16, (0.1)*Random(5, 15), (0.1)*Random(-5, 5), (0.1)*Random(-5, 5), Random(-8, 8), 128)
		SKUL B 0 BRIGHT A_SpawnItemEx("SFireTrail3",-12,0,16, (0.1)*Random(5, 15), (0.1)*Random(-5, 5), (0.1)*Random(-5, 5), Random(-8, 8), 128)
		SKUL B 2 BRIGHT A_FaceTarget
		SKUL B 0 BRIGHT A_SpawnItemEx("SFireTrail1",-12,0,16, (0.1)*Random(5, 15), (0.1)*Random(-5, 5), (0.1)*Random(-5, 5), Random(-8, 8), 128)
		SKUL B 0 BRIGHT A_SpawnItemEx("SFireTrail2",-12,0,16, (0.1)*Random(5, 15), (0.1)*Random(-5, 5), (0.1)*Random(-5, 5), Random(-8, 8), 128)
		SKUL B 0 BRIGHT A_SpawnItemEx("SFireTrail3",-12,0,16, (0.1)*Random(5, 15), (0.1)*Random(-5, 5), (0.1)*Random(-5, 5), Random(-8, 8), 128)
		SKUL B 2 BRIGHT A_FaceTarget
		SKUL B 0 BRIGHT A_SpawnItemEx("SFireTrail1",-12,0,16, (0.1)*Random(5, 15), (0.1)*Random(-5, 5), (0.1)*Random(-5, 5), Random(-8, 8), 128)
		SKUL B 0 BRIGHT A_SpawnItemEx("SFireTrail2",-12,0,16, (0.1)*Random(5, 15), (0.1)*Random(-5, 5), (0.1)*Random(-5, 5), Random(-8, 8), 128)
		SKUL B 0 BRIGHT A_SpawnItemEx("SFireTrail3",-12,0,16, (0.1)*Random(5, 15), (0.1)*Random(-5, 5), (0.1)*Random(-5, 5), Random(-8, 8), 128)
		SKUL B 0 BRIGHT A_SkullAttack
		SKUL B 0 BRIGHT A_SpawnItemEx("SFireTrail1",-12,0,16, (0.1)*Random(5, 15), (0.1)*Random(-5, 5), (0.1)*Random(-5, 5), Random(-8, 8), 128)
		SKUL B 0 BRIGHT A_SpawnItemEx("SFireTrail2",-12,0,16, (0.1)*Random(5, 15), (0.1)*Random(-5, 5), (0.1)*Random(-5, 5), Random(-8, 8), 128)
		SKUL B 1 BRIGHT A_SpawnItemEx("SFireTrail3",-12,0,16, (0.1)*Random(5, 15), (0.1)*Random(-5, 5), (0.1)*Random(-5, 5), Random(-8, 8), 128)
		SKUL B 0 BRIGHT A_JumpIf((momx+momy)<4,"See")
		Goto Missile+41
	Pain:
		SKUL B 1 BRIGHT A_Pain
		Goto See
	Death:
	    TNT1 A 1 BRIGHT A_ScreamAndUnblock
		TNT1 AAAAA 0 BRIGHT A_SpawnItemEx("FireTrail1", 0,0,0, (0.1)*Random(-20, 20), 0, (0.1)*Random(-20, 20), Random(0, 360), 128)
	    TNT1 AAAAA 0 BRIGHT A_SpawnItemEx("FireTrail2", 0,0,0, (0.1)*Random(-20, 20), 0, (0.1)*Random(-20, 20), Random(0, 360), 128)
	    TNT1 AAAAA 0 BRIGHT A_SpawnItemEx("FireTrail3", 0,0,0, (0.1)*Random(-20, 20), 0, (0.1)*Random(-20, 20), Random(0, 360), 128)
		TNT1 A 1 BRIGHT
		Stop
	}
}

ACTOR SFireTrail1
{
   Speed 0
   Height 1
   Radius 1
   Damage 0
   RenderStyle Add
   Alpha 1.0
   Scale 0.15
   +NOGRAVITY
   +DROPOFF
   +ForceXYBillboard
   +NOCLIP
   +DONTSPLASH
   +CLIENTSIDEONLY
   States
   {
   Spawn:
	  NADA A 0
      Goto Death
   Death:
	  FIRR AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 1 BRIGHT A_FadeOut(0.1)
      Stop
   }
}

ACTOR SFireTrail2
{
   Speed 0
   Height 1
   Radius 1
   Damage 0
   RenderStyle Add
   Alpha 1.0
   Scale 0.15
   +NOGRAVITY
   +DROPOFF
   +ForceXYBillboard
   +NOCLIP
   +DONTSPLASH
   +CLIENTSIDEONLY
   States
   {
   Spawn:
	  NADA A 0
      Goto Death
   Death:
	  FIRR BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB 1 BRIGHT A_FadeOut(0.1)
      Stop
   }
}

ACTOR SFireTrail3
{
   Speed 0
   Height 1
   Radius 1
   Damage 0
   RenderStyle Add
   Alpha 1.0
   Scale 0.15
   +NOGRAVITY
   +DROPOFF
   +ForceXYBillboard
   +NOCLIP
   +DONTSPLASH
   +CLIENTSIDEONLY
   States
   {
   Spawn:
	  NADA A 0
      Goto Death
   Death:
	  FIRR CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC 1 BRIGHT A_FadeOut(0.1)
      Stop
   }
}

actor DRCacodemon : Cacodemon replaces Cacodemon
{
  Speed 8
  Health 250
  GibHealth -100
  Radius 30
  Height 64
  Mass 200
  PainChance 100
  MaxStepHeight 32
  SeeSound "cacosight"
  PainSound "cacopain"
  ActiveSound "cacoactive"
  DeathSound "cacodeath"
  Species Monsters
  Scale 0.85
  MONSTER
  +FLOAT 
  +NOGRAVITY
  +DONTHURTSPECIES
  +SLIDESONWALLS
  +THRUSPECIES
  -FASTER
  -FASTMELEE
  +NEVERFAST
  states
  {
  Spawn:
    CYBI ABCDEFGHIJKLMNOPQRSTUVWXYZ 2 A_Look
	CYBU ABCDEFGHIJKLMNOPQRSTUVW 2 A_Look
    loop
  See:
    CYBW ABCDEFGHIJKLMNOPQRS 2 A_Chase
    loop
  Pain:
    CYBI A 1 A_Pain
    goto See
  Missile:
    CYBF ABCDEF 2 A_FaceTarget
	CYBF F 0 A_PlaySound("cacoattack")
	CYBF F 2 A_CustomMissile("CacoBallAd",32,0,0)
	CYBF GHIJKLMNOPQR 2 A_FaceTarget
	goto See
  Melee:
    CYBF ABCDEF 2 A_FaceTarget
	CYBF F 2 A_CustomMeleeAttack(6,"cacomelee","weapons/fistswing",normal,1)
	CYBF GHIJKLMNOPQR 2
	goto See
  Death:
    TNT1 A 0 A_ScreamAndUnblock
	CCDE A 0 A_Fall
	CCDE A 6
	CCDE BC 6
	CCDE D 700
	CCDE DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD 1 A_FadeOut(0.06)
	stop
  Crush:
  XDeath:
	TNT1 A 0 A_CustomMissile ("XDeath11", 0, 0, random (0, 360), 2, random (-160, 160))
	TNT1 A 0 A_CustomMissile ("XDeath21", 0, 0, random (0, 360), 2, random (-160, 160))
	TNT1 A 0 A_CustomMissile ("XDeath31", 0, 0, random (0, 360), 2, random (-160, 160))
	TNT1 A 0 A_CustomMissile ("XDeath41", 0, 0, random (0, 360), 2, random (-160, 160))
	TNT1 A 0 A_CustomMissile ("XDeath51", 0, 0, random (0, 360), 2, random (-160, 160))
	TNT1 A 0 A_CustomMissile ("XDeath61", 0, 0, random (0, 360), 2, random (-160, 160))
	TNT1 A 0 A_CustomMissile ("XDeath71", 0, 0, random (0, 360), 2, random (-160, 160))
	TNT1 A 0 A_CustomMissile ("XDeath81", 0, 0, random (0, 360), 2, random (-160, 160))
	TNT1 A 0 A_GiveToTarget("ExcellentStrike",1)
	NADA A 0 A_Fall
	NADA A 1 A_XScream
	Stop
  Raise:
  Stop
  }
}

actor CacoBallAd
{
  Radius 8
  Height 8
  Renderstyle Add
  Alpha 1
  Speed 20
  Damage 4
  SeeSound "cacoattack"
  DeathSound "cacoshotx"
  DamageType "Monsters"
  PROJECTILE
  +RANDOMIZE
  +FORCEXYBILLBOARD
  states
  {
  Spawn:
    BAL2 A 1 bright A_SpawnItem("CBallTrace",0,0,0)
	BAL2 B 1 bright A_SpawnItem("CBallTrace",0,0,0)
    loop
  Death:
    BAL2 C 6 bright
    BAL2 DE 6 bright
    stop
  }
}

actor CBallTrace
{
  renderstyle Translucent
  alpha 0.5
  scale 0.7
  +NOBLOCKMAP
  +NOGRAVITY
  +CLIENTSIDEONLY
  +FORCEXYBILLBOARD
  states
  {
  Spawn:
    BAL2 ABAB 3 A_FadeOut(0.1)
    stop
  }
}  

ACTOR DRPainElemental : PainElemental replaces PainElemental
{
  Speed 12
  Health 200
  Radius 30
  Height 64
  Mass 300
  PainChance 100
  MaxStepHeight 32
  SeeSound "cacosight"
  PainSound "cacopain"
  ActiveSound "cacoactive"
  DeathSound "explodeath"
  Species Monsters
  Scale 0.85
  MONSTER
  +FLOAT 
  +NOGRAVITY
  +DONTHURTSPECIES
  +SLIDESONWALLS
  +THRUSPECIES
  -FASTER
  -FASTMELEE
  +NEVERFAST
  states
  {
  Spawn:
    CYBI ABCDEFGHIJKLMNOPQRSTUVWXYZ 2 A_Look
	CYBU ABCDEFGHIJKLMNOPQRSTUVW 2 A_Look
    loop
  See:
    CYBW ABCDEFGHIJKLMNOPQRS 2 A_Chase
    loop
  Pain:
    CYBI A 1 A_Pain
    goto See
  Missile:
    CYBF ABCDEFGH 2 A_FaceTarget
	CYBF I 2 A_PainAttack
	CYBF JKLMNOPQRST 2 A_FaceTarget
	goto See
  Melee:
    CYBF ABCDEFGH 2 A_FaceTarget
	CYBF I 2 A_CustomMeleeAttack(6,"cacomelee","weapons/fistswing",normal,1)
	CYBF JKLMNOPQRST 2
	goto See
  Death:
    TNT1 A 1 BRIGHT A_ScreamAndUnblock
	TNT1 A 0 BRIGHT A_SpawnItem("BarrelExplosion",0,0,0)
	TNT1 AAAAAAAAAAAAAAAAAAAA 0 BRIGHT A_SpawnItemEx("FireTrail1", random(-16,16),random(-16,16),random(0,64), (0.1)*Random(-20, 20), 0, (0.1)*Random(-20, 20), Random(0, 360), 128)
	TNT1 AAAAAAAAAAAAAAAAAAAA 0 BRIGHT A_SpawnItemEx("FireTrail2", random(-16,16),random(-16,16),random(0,64), (0.1)*Random(-20, 20), 0, (0.1)*Random(-20, 20), Random(0, 360), 128)
	TNT1 AAAAAAAAAAAAAAAAAAAA 0 BRIGHT A_SpawnItemEx("FireTrail3", random(-16,16),random(-16,16),random(0,64), (0.1)*Random(-20, 20), 0, (0.1)*Random(-20, 20), Random(0, 360), 128)
	TNT1 A 1 BRIGHT
	stop
  Raise:
  Stop
  }
}

Actor BarrelExplosion
{
   Height 1
   Radius 1
   Scale 1.5
   RenderStyle Add
   Alpha 1.0
   +DROPOFF
   +NOGRAVITY
   +DONTFALL
   +ForceXYBillboard
   +NOCLIP
   +CLIENTSIDEONLY
   States
   {
   Spawn:
      BARX A 4 BRIGHT
      Stop
   }
}

Actor ExplodeSmoke
{
   Height 1
   Radius 1
   +NOINTERACTION
   +ForceXYBillboard
   +CLIENTSIDEONLY
   States
   {
   Spawn:
	  TRAI AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 1 A_FadeOut(0.05)
      Stop
   }
}

actor DRPinky : Demon replaces Demon
{
  Speed 20
  Health 250
  GibHealth -50
  Radius 30
  Height 56
  Mass 100
  PainChance 100
  SeeSound "demonsight"
  ActiveSound "demonactive"
  PainSound "demonpain"
  DeathSound "demondeath"
  MeleeSound "HKmelee"
  MeleeDamage 8
  Species Monsters
  Scale 0.85
  MONSTER
  +DONTHURTSPECIES
  +SLIDESONWALLS
  +THRUSPECIES
  -FASTER
  -FASTMELEE
  +NEVERFAST
  states
  {
  Spawn:
    CYBI ABCDEFGHIJKLMNOPQRSTUVWXYZ 2 A_Look
	CYBU ABCDEFGHIJKLMNOPQRSTUVWXYZ 2 A_Look
	CYBO ABCDEFGHIJKLMNOPQRSTUVWXYZ 2 A_Look
	CYBK ABCDEFGHIJK 2 A_Look
    loop
  See:
    CYBW ABCDEFGHIJK 2 A_Chase
    loop
  Pain:
    CYBI A 1 A_Pain
    goto See
  Melee:
    CYBF AB 3 A_FaceTarget
	CYBF B 0 A_MeleeAttack
	CYBF CDEFGHIJ 3
	goto See
  Death:
	PKDE A 3 A_ScreamAndUnblock
	PKDE BCDEFGHI 3
	PKDE J 700
	PKDE JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ 1 A_FadeOut(0.06)
	stop
  Crush:
  XDeath:
	TNT1 A 0 A_CustomMissile ("XDeathHead", 32, 0, random (0, 360), 2, random (67, 160))
	TNT1 A 0 A_CustomMissile ("XDeath11", 32, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath21", 32, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath31", 32, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath41", 32, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath51", 32, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath61", 32, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath71", 32, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath81", 32, 0, random (0, 360), 2, random (0, 160))
	NADA A 1 A_XScream
	Stop
  Raise:
  Stop
  }
}

actor DRSpectre : DRPinky replaces Spectre
{
  Game Doom
  SpawnID 9
  +SHADOW
  +GHOST
  -FASTER
  -FASTMELEE
  +NEVERFAST
  RenderStyle OptFuzzy
  Alpha 0.3
  HitObituary "$OB_SPECTREHIT"
  Scale 0.85
}

Actor DRRevenant : Revenant replaces Revenant
{
  Speed 8
  Health 300
  Radius 20
  Height 56
  Mass 200
  PainChance 50
  SeeSound "skeletonsight"
  ActiveSound "skeletonactive"
  PainSound "skeletonpain"
  DeathSound "skeletondeath"
  Species Monsters
  Scale 0.85
  MONSTER
  +DONTHURTSPECIES
  +SLIDESONWALLS
  +THRUSPECIES
  -FASTER
  -FASTMELEE
  +NEVERFAST
  states
  {
  Spawn:
    CYBI ABCDEFGHIJKLMNOPQRSTUVWXYZ 2 A_Look
	CYBU ABCDEFGHIJKLMNOPQRSTUVWXYZ 2 A_Look
	CYBO ABCDE 2 A_Look
    loop
  See:
    CYBW ABCDEFGHIJKLMNO 2 A_Chase
    loop
  Pain:
    CYBI A 1 A_Pain
    goto See
  Missile:
    CYBF ABCDEF 3 A_FaceTarget
    CYBF G 3 Bright A_CustomMissile("DRRevenantRocket", 60, 10)
    CYBF HIJKLMNOP 3 A_FaceTarget
    Goto See
  Melee:
    CYBM ABCDEF 3 A_FaceTarget
	CYBM G 3 A_CustomMeleeAttack(6,"impmelee","weapons/fistswing",normal,1)
	CYBM HIJKLMNO 3
	goto See
  Death:
	CYBD A 4 A_ScreamAndUnblock
	CYBD BCDEFGH 4
	CYBD I 700
	CYBD IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII 1 A_FadeOut(0.06)
	stop
  Raise:
  Stop
  }
}

Actor DRRevenantRocket
{
  Health 10
  Radius 6
  Height 12
  Speed 16
  Damage 4
  Projectile 
  +SEEKERMISSILE 
  +RANDOMIZE
  -NOBLOCKMAP
  +MTHRUSPECIES
  Scale 0.75
  SeeSound "weapons/d3rockl"
  DeathSound "RocketEXPLODE"
  Decal RevenantScorch
  DamageType "Monsters"
  States
  {
  Spawn:
    3RRC A 2 Bright A_SeekerMissile(3,3)
	3RRC A 0 BRIGHT A_PlaySoundEx("weapons/rockfly",SoundSlot7,1)
	3RRC A 0 BRIGHT A_SpawnItem("RocketFTrail",-8,0,0)
    3RRC A 2 Bright A_SeekerMissile(3,3)
	3RRC A 0 BRIGHT A_SpawnItem("RocketFTrail",-8,0,0)
    Loop
  Death:
	TNT1 A 4 BRIGHT A_SpawnItem("BarrelExplosion",0,32,0)
	TNT1 A 1 BRIGHT
	Stop
  }
}

actor DRMancubus : Fatso replaces Fatso
{
  Speed 8
  Health 500
  GibHealth -100
  Radius 30
  Height 88
  Mass 500
  PainChance 100
  MaxStepHeight 24
  MaxDropOffHeight 64
  SeeSound "manc/sight"
  ActiveSound "manc/active"
  PainSound "manc/pain"
  DeathSound "manc/death"
  Species Monsters
  MONSTER
  +DONTHURTSPECIES
  +SLIDESONWALLS
  +THRUSPECIES
  -FASTER
  -FASTMELEE
  +NEVERFAST
  states
  {
  Spawn:
    CYBI ABCDEFGHIJKLMNOPQRSTUVWXYZ 3 A_Look
	CYBU ABCDEFGHIJKLMNOPQRSTUVWXYZ 3 A_Look
	CYBO ABCDEFGHIJKLMNOPQRSTUVWXYZ 3 A_Look
	CYBK ABCDEFGHIJKLMNOPQRSTUVWXYZ 3 A_Look
	CYBL ABCDEFGHIJKLMNO 3 A_Look
    loop
  See:
    CYBW ABCD 2 A_Chase
	CYBW E 0 Radius_Quake(1,8,0,4,0)
	CYBW E 0 A_PlaySoundEx("Big/step","SoundSlot7",0,0)
	CYBW EFGHIJKLM 2 A_Chase
	CYBW N 0 Radius_Quake(1,8,0,4,0)
	CYBW N 0 A_PlaySoundEx("Big/step","SoundSlot7",0,0)
	CYBW NOP 2 A_Chase
    loop
  Pain:
    CYBI A 1 A_Pain
    goto See
  Missile:
    CYBF ABCD 2 A_CPosRefire
	CYBF E 0 A_PlaySound("manc/attack")
	CYBF E 2 A_CustomMissile("MacubusBall",48,-32)
	CYBF FGHI 2 A_CPosRefire
	CYBF J 0 A_PlaySound("manc/attack")
	CYBF J 2 A_CustomMissile("MacubusBall",48,32)
	CYBF KLMNO 2 A_CPosRefire
	goto Missile
  Death:
    TNT1 A 0 A_ScreamAndUnblock
	TNT1 A 0 A_BossDeath
	MCDE A 6
	MCDE BCDEFGHIJ 6
	MCDE K 700
	MCDE KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK 1 A_FadeOut(0.06)
	stop
  Crush:
  XDeath:
	TNT1 A 0 A_CustomMissile ("XDeath11", 32, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath21", 32, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath31", 32, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath41", 32, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath51", 32, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath61", 32, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath71", 32, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath81", 32, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath11", 32, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath21", 32, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath31", 32, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath41", 32, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath51", 32, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath61", 32, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath71", 32, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath81", 32, 0, random (0, 360), 2, random (0, 160))
	NADA A 0 A_BossDeath
	NADA A 1 A_XScream
	Stop
  Raise:
  Stop
  }
}

actor MacubusBall
{
    Radius 8
	Height 8
	Speed 20
	Damage 4
	Scale 0.25
	RenderStyle Add
	Alpha 0.9
	DeathSound "fatso/shotx"
	Decal Scorch
	DamageType "Monsters"
	PROJECTILE
	+NOGRAVITY
	+DROPOFF
	+ForceXYBillboard
	+MTHRUSPECIES
	States
	{
    Spawn: 
		FIRE A 1 BRIGHT A_SpawnItemEx("FireTrail1",0,0,0, (0.1)*Random(10,20), (0.1)*Random(-10,10), (0.1)*Random(-10,10), Random(-8, 8), 128)
		FIRE A 1 BRIGHT A_SpawnItemEx("FireTrail2",0,0,0, (0.1)*Random(10,20), (0.1)*Random(-10,10), (0.1)*Random(-10,10), Random(-8, 8), 128)
		FIRE A 1 BRIGHT A_SpawnItemEx("FireTrail3",0,0,0, (0.1)*Random(10,20), (0.1)*Random(-10,10), (0.1)*Random(-10,10), Random(-8, 8), 128)
		Loop
	Death:
		TNT1 A 0 BRIGHT A_SpawnItem("ExplodeSmoke",0,32,0)
		TNT1 A 4 BRIGHT A_SpawnItem("BarrelExplosion",0,32,0)
		TNT1 A 1 BRIGHT
		Stop
	}
}

ACTOR FireTrail1
{
   Speed 0
   Height 1
   Radius 1
   Damage 0
   RenderStyle Add
   Alpha 1.0
   Scale 0.2
   +NOGRAVITY
   +DROPOFF
   +ForceXYBillboard
   +NOCLIP
   +DONTSPLASH
   +CLIENTSIDEONLY
   States
   {
   Spawn:
	  NADA A 0
      Goto Death
   Death:
	  FIRR AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 1 BRIGHT A_FadeOut(0.05)
      Stop
   }
}

ACTOR FireTrail2
{
   Speed 0
   Height 1
   Radius 1
   Damage 0
   RenderStyle Add
   Alpha 1.0
   Scale 0.2
   +NOGRAVITY
   +DROPOFF
   +ForceXYBillboard
   +NOCLIP
   +DONTSPLASH
   +CLIENTSIDEONLY
   States
   {
   Spawn:
	  NADA A 0
      Goto Death
   Death:
	  FIRR BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB 1 BRIGHT A_FadeOut(0.05)
      Stop
   }
}

ACTOR FireTrail3
{
   Speed 0
   Height 1
   Radius 1
   Damage 0
   RenderStyle Add
   Alpha 1.0
   Scale 0.2
   +NOGRAVITY
   +DROPOFF
   +ForceXYBillboard
   +NOCLIP
   +DONTSPLASH
   +CLIENTSIDEONLY
   States
   {
   Spawn:
	  NADA A 0
      Goto Death
   Death:
	  FIRR CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC 1 BRIGHT A_FadeOut(0.05)
      Stop
   }
}

actor DRBruiser : Arachnotron replaces Arachnotron
{
  Speed 10
  Health 600
  GibHealth -100
  Radius 30
  Height 120
  Mass 400
  PainChance 100
  MaxStepHeight 32
  MaxDropOffHeight 64
  SeeSound "bruis/sight"
  ActiveSound "bruis/active"
  PainSound "bruis/pain"
  DeathSound "bruis/death"
  Species Monsters
  Obituary "%o was slain by a Bruiser"
  MONSTER
  +DONTHURTSPECIES
  +SLIDESONWALLS
  +THRUSPECIES
  -FASTER
  -FASTMELEE
  +NEVERFAST
  states
  {
  Spawn:
    CYBI ABCDEFGHIJKLMNOPQ 2 A_Look
    loop
  See:
    CYBW ABCDEF 3 A_Chase
	CYBW G 0 Radius_Quake(1,8,0,8,0)
	CYBW G 0 A_PlaySoundEx("bruiser/step","SoundSlot7",0,0)
	CYBW GHIJKLM 3 A_Chase
	CYBW O 0 Radius_Quake(1,8,0,8,0)
	CYBW O 0 A_PlaySoundEx("bruiser/step","SoundSlot7",0,0)
	CYBW OP 3 A_Chase
    loop
  Pain:
    CYBI A 1 A_Pain
    goto See
  Missile:
    CYBF ABCD 1 A_CPosRefire
	CYBF E 0 A_PlaySound("bruis/attack")
	CYBF E 1 A_CustomMissile("MacubusBall",72,-32)
	CYBF FGHI 1 A_CPosRefire
	CYBF J 0 A_PlaySound("bruis/attack")
	CYBF J 1 A_CustomMissile("MacubusBall",72,32)
	CYBF KLMNO 1 A_CPosRefire
	goto Missile
  Death:
	TNT1 A 0 A_ScreamAndUnblock
	TNT1 A 0 A_BossDeath
	CYBD A 4
	CYBD BCDEFGHIJKLMN 4
	CYBD O 700
	CYBD OOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOOO 1 A_FadeOut(0.06)
	stop
  Crush:
  XDeath:
	TNT1 A 0 A_CustomMissile ("XDeath11", 32, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath21", 40, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath31", 48, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath41", 56, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath51", 64, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath61", 32, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath71", 42, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath81", 58, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath11", 32, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath21", 40, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath31", 48, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath41", 56, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath51", 64, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath61", 32, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath71", 42, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath81", 58, 0, random (0, 360), 2, random (0, 160))
	NADA A 0 A_BossDeath
	NADA A 1 A_XScream
	Stop
  Raise:
  Stop
  }
}

actor DRHellknight : Hellknight replaces Hellknight
{
  Speed 12
  Health 1250
  GibHealth -100
  Radius 24
  Height 120
  Mass 500
  PainChance 10
  MaxStepHeight 32
  SeeSound "HKsight"
  ActiveSound "HKactive"
  PainSound "HKpain"
  DeathSound "HKdeath"
  MeleeRange 88
  Species Monsters
  Obituary "%o was teared by a Hellknight"
  Scale 1.3
  MONSTER
  +DROPOFF
  +DONTHURTSPECIES
  +SLIDESONWALLS
  +THRUSPECIES
  -FASTER
  -FASTMELEE
  +NEVERFAST
  states
  {
  Spawn:
    CYBI ABCDEFGHIJKLMNOPQRSTUVWXYZ 2 A_Look
	CYBU ABCDEFGHIJKLMNOPQRSTUVWXYZ 2 A_Look
	CYBO ABCDEFG 2 A_Look
    loop
  See:
    CYBW ABCDEFGHI 1 A_Chase("Melee",0)
	CYBW J 0 Radius_Quake(2,8,0,8,0)
	CYBW J 0 A_JumpIf(momz<-1,"JumpLoop")
	CYBW J 0 A_PlaySoundEx("HKStep","SoundSlot7",0,0)
	CYBW JKLMNOPQR 1 A_Chase("Melee",0)
	CYBW S 0 Radius_Quake(2,8,0,8,0)
	CYBW S 0 A_JumpIf(momz<-1,"JumpLoop")
	CYBW S 0 A_PlaySoundEx("HKStep","SoundSlot7",0,0)
	CYBW S 1 A_Chase("Melee",0)
    loop
  JumpLoop:
    CYBJ I 0 A_Recoil(-1)
    CYBJ I 1 A_CheckFloor("Land")
	Loop
  Land:
	CYBJ J 0 Radius_Quake(2,8,0,12,0)
	CYBJ J 0 Radius_Quake(1,8,0,18,0)
	CYBJ J 2 A_PlaySoundEx("cyberland",SoundSlot7,0,0)
	CYBJ KL 2
	CYBJ MNOPQRS 4
	goto Spawn
  Pain:
    CYBI A 1 A_Pain
    goto See
  Melee:
    CYBF ABCDEFGHI 1 A_FaceTarget
	CYBF K 2 A_CustomMeleeAttack(random(20,30),"HKmelee","weapons/footwing",normal,1)
	CYBF LMNOPQRS 2
	goto See
  Death:
    HKDE A 0 A_FaceTarget
	TNT1 A 0 A_ScreamAndUnblock
	TNT1 A 0 A_BossDeath
	HKDE A 0 A_Recoil(16)
	HKDE A 1 ThrustThingZ(0,32,0,0)
	HKDE BCDEFGH 4
	HKDE I 700
	HKDE IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII 1 A_FadeOut(0.06)
	stop
  Crush:
  XDeath:
	TNT1 A 0 A_CustomMissile ("XDeath11", 32, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath21", 40, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath31", 48, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath41", 56, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath51", 64, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath61", 32, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath71", 42, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath81", 58, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath11", 32, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath21", 40, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath31", 48, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath41", 56, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath51", 64, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath61", 32, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath71", 42, 0, random (0, 360), 2, random (0, 160))
	TNT1 A 0 A_CustomMissile ("XDeath81", 58, 0, random (0, 360), 2, random (0, 160))
	NADA A 0 A_BossDeath
	NADA A 1 A_XScream
	Stop
  Raise:
  Stop
  }
}

ACTOR DRArchvile : Archvile replaces Archvile
{
	Health 500
	Radius 16
	Height 56
	Mass 75
	Speed 10
	PainChance 10
	MeleeDamage 8
	Monster
	MaxTargetRange 896
	+QUICKTORETALIATE
	+SLIDESONWALLS
	+THRUSPECIES
	-FASTER
	-FASTMELEE
	+NEVERFAST
	SeeSound "vilesight"
	PainSound "vilepain"
	DeathSound "viledeath"
	ActiveSound "vileactive"
	MeleeSound "impmelee"
	Species Monsters
    DamageFactor "Players", 1
	DamageFactor "Bodysplat", 0
    DamageFactor "Monsters", 0
	States
	{
	Spawn:
		CYBI ABCDEFGHIJKLMNOPQRSTUVWXYZ 3 A_Look
		CYBU ABCDEFGHIJKLMNOPQRSTUVWXYZ 3 A_Look
		CYBO ABCDEFGHIJKLMNOPQRSTUVWXYZ 3 A_Look
		CYBK ABCDEFGHI 3 A_Look
		loop
	See:
		CYBW ABCDEFGHIJKLMN 3 A_Chase
		loop
	Melee:
		CYBF ABCDEF 2 A_FaceTarget
		CYBF G 2 A_MeleeAttack
		CYBF HIJKLMNOPQ 2
		goto See
	Missile:
	    CYB3 A 0 A_Jump(160,"MissileFloor")
		CYB3 A 0 A_PlaySound("vilesight")
		CYB3 ABCDE 3 A_FaceTarget
		CYB3 F 0 A_VileTarget("VileMark2")
		CYB3 F 3 A_VileTarget("VileMark")
		CYB3 GHIJKLMNOPQRS 3 A_FaceTarget
		Goto See
	MissileFloor:
		CYB2 ABCD 3 A_FaceTarget
		CYB2 E 3 A_CustomMissile("VileFloorFire",0,0,0)
		CYB2 FGHIJKLM 3
		Goto See
	Pain:
		CYBI A 1 A_Pain
		Goto See
	Death:
		TNT1 A 0 A_ScreamAndUnblock
		CYBD A 0
		CYBD A 3 A_Recoil(4)
		CYBD BCDEFGH 3
		CYBD I 700
		CYBD IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII 1 A_FadeOut(0.06)
		stop
	Crush:
	XDeath:
		TNT1 A 0 A_CustomMissile ("XDeathHead", 32, 0, random (0, 360), 2, random (67, 160))
		TNT1 A 0 A_CustomMissile ("XDeath11", 32, 0, random (0, 360), 2, random (0, 160))
		TNT1 A 0 A_CustomMissile ("XDeath21", 32, 0, random (0, 360), 2, random (0, 160))
		TNT1 A 0 A_CustomMissile ("XDeath31", 32, 0, random (0, 360), 2, random (0, 160))
		TNT1 A 0 A_CustomMissile ("XDeath41", 32, 0, random (0, 360), 2, random (0, 160))
		TNT1 A 0 A_CustomMissile ("XDeath51", 32, 0, random (0, 360), 2, random (0, 160))
		TNT1 A 0 A_CustomMissile ("XDeath61", 32, 0, random (0, 360), 2, random (0, 160))
		TNT1 A 0 A_CustomMissile ("XDeath71", 32, 0, random (0, 360), 2, random (0, 160))
		TNT1 A 0 A_CustomMissile ("XDeath81", 32, 0, random (0, 360), 2, random (0, 160))
		NADA A 1 A_XScream
		Stop
	}
}

actor VileMark
{
  RenderStyle Add
  Alpha 0
  Height 1
  Radius 1
  DamageType "Monsters"
  +NOBLOCKMAP
  +NOGRAVITY
  +SEEKERMISSILE
  +NODAMAGETHRUST
  +EXTREMEDEATH
  States
  {
  Spawn:
    NADA A 0
	NADA A 0 A_PlaySound("vilemark")
    NADA A 0 A_SetTranslucent(0.1,1)
	NADA A 2 A_Fire
	NADA A 0 A_SetTranslucent(0.2,1)
	NADA A 2 A_Fire
	NADA A 0 A_SetTranslucent(0.3,1)
	NADA A 2 A_Fire
	NADA A 0 A_SetTranslucent(0.4,1)
	NADA A 2 A_Fire
	NADA A 0 A_SetTranslucent(0.5,1)
	NADA A 2 A_Fire
	NADA A 0 A_SetTranslucent(0.6,1)
	NADA A 2 A_Fire
	NADA A 0 A_SetTranslucent(0.7,1)
	NADA A 2 A_Fire
	NADA A 0 A_SetTranslucent(0.8,1)
	NADA A 2 A_Fire
	NADA A 0 A_SetTranslucent(0.9,1)
	NADA A 2 A_Fire
	NADA A 0 A_SetTranslucent(1.0,1)
	NADA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 2 A_Fire
	TNT1 AAAAA 0 BRIGHT A_SpawnItemEx("VFire1", 0,0,0, (0.1)*Random(-20, 20), 0, (0.1)*Random(-20, 20), Random(0, 360), 128)
	TNT1 AAAAA 0 BRIGHT A_SpawnItemEx("VFire2", 0,0,0, (0.1)*Random(-20, 20), 0, (0.1)*Random(-20, 20), Random(0, 360), 128)
	TNT1 AAAAA 0 BRIGHT A_SpawnItemEx("VFire3", 0,0,0, (0.1)*Random(-20, 20), 0, (0.1)*Random(-20, 20), Random(0, 360), 128)
	TNT1 A 0 BRIGHT A_SpawnItem("BarrelExplosion",0,0,0)
	TNT1 A 0 A_PlaySound("VileExpl")
	TNT1 A 1 BRIGHT A_Explode(50,128)
    Stop
  }
}

actor VileMark2
{
  RenderStyle Add
  Alpha 0
  Height 1
  Radius 1
  +NOBLOCKMAP
  +NOGRAVITY
  +SEEKERMISSILE
  States
  {
  Spawn:
    NADA A 0
    NADA A 0 A_SetTranslucent(0.1,1)
	NADA A 2 A_Fire
	NADA A 0 A_SetTranslucent(0.2,1)
	NADA A 2 A_Fire
	NADA A 0 A_SetTranslucent(0.3,1)
	NADA A 2 A_Fire
	NADA A 0 A_SetTranslucent(0.4,1)
	NADA A 2 A_Fire
	NADA A 0 A_SetTranslucent(0.5,1)
	NADA A 2 A_Fire
	NADA A 0 A_SetTranslucent(0.6,1)
	NADA A 2 A_Fire
	NADA A 0 A_SetTranslucent(0.7,1)
	NADA A 2 A_Fire
	NADA A 0 A_SetTranslucent(0.8,1)
	NADA A 2 A_Fire
	NADA A 0 A_SetTranslucent(0.9,1)
	NADA A 2 A_Fire
	NADA A 0 A_SetTranslucent(1.0,1)
	NADA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 2 A_Fire
	TNT1 A 1 BRIGHT
    Stop
  }
}

actor VileFloorFire
{
    Radius 16
	Height 32
	Speed 24
	Damage 10
	Scale 0.25
	RenderStyle Add
	Alpha 0.9
	SeeSound "vilefire"
	DeathSound "VileExpl"
	Decal Scorch
	DamageType "Monsters"
	PROJECTILE
	+NOGRAVITY
	+DROPOFF
	+ForceXYBillboard
	+FLOORHUGGER
	+NOBLOCKMAP
	States
	{
    Spawn:
		NADA AA 0 BRIGHT A_SpawnItemEx("VFire1", 0,0,0, (0.1)*Random(-80, 80), 0, (0.1)*Random(-80, 80), Random(0, 360), 128)
		NADA AA 0 BRIGHT A_SpawnItemEx("VFire2", 0,0,0, (0.1)*Random(-80, 80), 0, (0.1)*Random(-80, 80), Random(0, 360), 128)
		NADA AA 0 BRIGHT A_SpawnItemEx("VFire3", 0,0,0, (0.1)*Random(-80, 80), 0, (0.1)*Random(-80, 80), Random(0, 360), 128)
		NADA A 1 BRIGHT
		Loop
	Death:
	    TNT1 AAAAA 0 BRIGHT A_SpawnItemEx("VFire1", 0,0,0, (0.1)*Random(-20, 20), 0, (0.1)*Random(-20, 20), Random(0, 360), 128)
	    TNT1 AAAAA 0 BRIGHT A_SpawnItemEx("VFire2", 0,0,0, (0.1)*Random(-20, 20), 0, (0.1)*Random(-20, 20), Random(0, 360), 128)
	    TNT1 AAAAA 0 BRIGHT A_SpawnItemEx("VFire3", 0,0,0, (0.1)*Random(-20, 20), 0, (0.1)*Random(-20, 20), Random(0, 360), 128)
		TNT1 A 0 BRIGHT A_SpawnItem("BarrelExplosion",0,32,0)
		TNT1 A 1 BRIGHT A_Explode(20,128)
		Stop
	}
}

ACTOR VFire1
{
   Speed 0
   Height 1
   Radius 1
   Damage 0
   RenderStyle Add
   Alpha 1.0
   Scale 0.5
   +NOINTERACTION
   +CLIENTSIDEONLY
   +ForceXYBillboard
   States
   {
   Spawn:
	  NADA A 0
      Goto Death
   Death:
	  FIRR AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 1 BRIGHT A_FadeOut(0.03)
      Stop
   }
}

ACTOR VFire2
{
   Speed 0
   Height 1
   Radius 1
   Damage 0
   RenderStyle Add
   Alpha 1.0
   Scale 0.5
   +NOINTERACTION
   +CLIENTSIDEONLY
   +ForceXYBillboard
   States
   {
   Spawn:
	  NADA A 0
      Goto Death
   Death:
	  FIRR BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB 1 BRIGHT A_FadeOut(0.03)
      Stop
   }
}

ACTOR VFire3
{
   Speed 0
   Height 1
   Radius 1
   Damage 0
   RenderStyle Add
   Alpha 1.0
   Scale 0.5
   +NOINTERACTION
   +CLIENTSIDEONLY
   +ForceXYBillboard
   States
   {
   Spawn:
	  NADA A 0
      Goto Death
   Death:
	  FIRR CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC 1 BRIGHT A_FadeOut(0.03)
      Stop
   }
}
