//Monster-Death Incarnate
ACTOR Incarnate : Revenant 30115
{
//$Title "Death Incarnate"
//$Category XV117Monsters
Health 300
Radius 20
Height 56
Mass 500
Speed 25
MeleeDamage 7
PainChance 64
MONSTER
Damagefactor IncarnateShot, 0
Tag "Death Incarnate"
// Note to modders: adding a GibHealth value of 50 - 100 will make
// it easier to trigger his Hades Sphere-spawning XDeath sequence
+FLOORCLIP
+SHORTMISSILERANGE
+DONTHARMCLASS
+AMBUSH
+NOTARGETSWITCH
+NOINFIGHTING
+NOBLOCKMONST
+THRUACTORS
+JUMPDOWN
+NOVERTICALMELEERANGE
+NOCLIP
Obituary "Are you Fustrated Yet,%o?"
HitObituary "%o was beaten to death by a Death Incarnate."
SeeSound "monster/incsit"
PainSound "skeleton/pain"
DeathSound "monster/incdth"
ActiveSound "monster/incact"
AttackSound "monster/incatk"
MeleeSound "monster/inchit"
DropItem "SuperBlurSphere" 15
States
   {
   Spawn:
       INCA AB 10 A_Look
       Loop
	   
	     SpawnNO:
			TNT1 A 0 A_ChangeFlag("THRUACTORS", 1)
		TNT1 A 0 A_ChangeFlag("COUNTKILL", 0)
		TNT1 A 0 A_SpawnItemEx ("Revenant1",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERAMBUSHFLAG ,0)
		Stop
	   
   See:
   
       INCA AABB 2
	   INCA CCDDEEFF 2 A_Chase
	       TNT1 A 0 A_JumpIfInTargetLOS("Cloak", 400, JLOSF_DEADNOJUMP, 500) // if close and we're under their crosshair, jump!
	   TNT1 A 0 A_Playsound("REVSTEPY",2)
       Loop
   Melee:

    INCA A 1 A_SetTranslucent(1.0)
       INCA G 0 A_Jump(10,8)
       INCA G 0 A_FaceTarget
       INCA G 6 A_SkelWhoosh


       INCA I 6 A_MeleeAttack
       Goto See

       INCA R 0 A_FaceTarget
       INCA R 5 A_SkelWhoosh
	   INCX D 0 Bright A_SpawnItem("HS",0,32)
	   
       INCA S 5 A_FaceTarget
       INCA T 5 A_MeleeAttack
	   
       INCA G 0 A_FaceTarget
       INCA G 5 A_SkelWhoosh

       INCA H 5 A_FaceTarget

       INCA I 5 A_MeleeAttack
	   	   TNT1 A 0 A_JumpIfInTargetLOS("Cloak", 400, JLOSF_DEADNOJUMP, 500) // if close and we're under their crosshair, jump!
       Goto See
	   
	   Missile:
	   goto see
   
   Cloak:
   TNT1 A 0 A_Playsound("SEEKING",1)
	   TNT1 A 0 Bright A_CustomMissile ("PlasmaSmoke", 28, 0, random (0, 180), 2, random (0, 180))
	   TNT1 A 0 A_Jump (10, "Clone")
	 TNT1 A 0 A_CustomMissile("SmokeSpawner",0,0,0,2,0)
      TNT1 A 0 Bright A_CustomMissile ("PlasmaSmoke", 28, 0, random (0, 180), 2, random (0, 180))
      TNT1 A 0 Bright A_CustomMissile ("PlasmaSmoke", 28, 0, random (0, 180), 2, random (0, 180))
	 TNT1 A 0 A_CustomMissile("SmokeSpawner",0,0,0,2,0)
    INCA A 1 A_SetTranslucent(0.90)
    INCA A 1 A_SetTranslucent(0.80)
    INCA A 1 A_SetTranslucent(0.70)
    INCA A 1 A_SetTranslucent(0.60)
    INCA A 1 A_SetTranslucent(0.50)
   INCA A 1 A_SetTranslucent(0.40)
    INCA A 1 A_SetTranslucent(0.30)
    INCA A 1 A_SetTranslucent(0.20)
    INCA A 1 A_SetTranslucent(0.10)
	   INCA A 1 A_SetTranslucent(0.0)
    TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Wander
    TNT1 A 0 A_Jump(1,25)
    TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_ExtChase(0,0,1,1)
	    Goto see
		
		
			
		Clone:
		 TNT1 A 0 A_Jump (3, "Clone2")
		   TNT1 A 0 Radius_Quake(3,10,0,16,0) //(intensity, duration, damrad, tremrad, tid)
	TNT1 A 0 A_SpawnItemEx("SmokeMonster", 50, 50, 60, 0, 0, 0, 0, SXF_SETMASTER)
	 TNT1 A 0 Bright A_CustomMissile ("PlasmaSmoke", 28, 0, random (0, 180), 2, random (0, 180))
      TNT1 A 0 Bright A_CustomMissile ("PlasmaSmoke", 28, 0, random (0, 180), 2, random (0, 180))
	 TNT1 A 0 A_CustomMissile("SmokeSpawner",0,0,0,2,0)
    INCA A 1 A_SetTranslucent(0.90)
    INCA A 1 A_SetTranslucent(0.80)
    INCA A 1 A_SetTranslucent(0.70)
    INCA A 1 A_SetTranslucent(0.60)
    INCA A 1 A_SetTranslucent(0.50)
   INCA A 1 A_SetTranslucent(0.40)
    INCA A 1 A_SetTranslucent(0.30)
    INCA A 1 A_SetTranslucent(0.20)
    INCA A 1 A_SetTranslucent(0.10)
	   INCA A 1 A_SetTranslucent(0.0)
    TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Wander
    TNT1 A 0 A_Jump(1,25)
    TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_ExtChase(0,0,1,1)
	    Goto see
		
		
		Clone2:
	TNT1 A 0 A_SpawnItemEx("Incarnate", 50, 50, 60, 0, 0, 0, 0, SXF_SETMASTER)
	 TNT1 A 0 Bright A_CustomMissile ("PlasmaSmoke", 28, 0, random (0, 180), 2, random (0, 180))
      TNT1 A 0 Bright A_CustomMissile ("PlasmaSmoke", 28, 0, random (0, 180), 2, random (0, 180))
	 TNT1 A 0 A_CustomMissile("SmokeSpawner",0,0,0,2,0)
    INCA A 1 A_SetTranslucent(0.90)
    INCA A 1 A_SetTranslucent(0.80)
    INCA A 1 A_SetTranslucent(0.70)
    INCA A 1 A_SetTranslucent(0.60)
    INCA A 1 A_SetTranslucent(0.50)
   INCA A 1 A_SetTranslucent(0.40)
    INCA A 1 A_SetTranslucent(0.30)
    INCA A 1 A_SetTranslucent(0.20)
    INCA A 1 A_SetTranslucent(0.10)
	   INCA A 1 A_SetTranslucent(0.0)
    TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Wander
    TNT1 A 0 A_Jump(1,25)
    TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_ExtChase(0,0,1,1)
	    Goto see
	
			
   Pain:
       INCA L 5
       INCA L 5 A_Pain
       Goto See

Death.Saw:
TNT1 AA 0 A_SpawnItemEx("ArmorCrueltyBonus2", 0, 0, 32, random (-2.5, 2.5), random (-2.5, 2.5), 5)
TNT1 AA 0 A_SpawnItemEx("ArmorCrueltyBonus2", 0, 0, 32, random (-2.5, 2.5), random (-2.5, 2.5), 5)
Death.Cut:
TNT1 AA 0 A_SpawnItemEx("ArmorCrueltyBonus2", 0, 0, 32, random (-2.5, 2.5), random (-2.5, 2.5), 5)
TNT1 AA 0 A_SpawnItemEx("ArmorCrueltyBonus2", 0, 0, 32, random (-2.5, 2.5), random (-2.5, 2.5), 5)
   
Death:
   TNT1 A 0 A_SetTranslucent(1.0)
       INCA L 0 A_Jump(90,10)
       INCA LM 4
       INCA N 4 A_Scream
       INCA O 4 A_NoBlocking
       INCA P 4
	   		TNT1 A 0 A_PlaySound("BOSCRU")
			TNT1 A 0 A_SpawnItem ("CrueltyBonus5Health")
				   	TNT1 A 0 A_SpawnItem ("CrueltyBonus5Armor")
					 INCA L 0 A_Jump(5,3)
       INCA Q -1
       Stop
       INCA LM 4
       INCA N 4 A_Scream
       INCA O 4 A_NoBlocking
       INCA P 4
       INCA Q 0 A_Jump(192,4)
       INCA Q 0 A_Jump(128,4)
       INCA Q 0 A_Jump(96,4)
       INCA Q 0 A_Jump(64,4)
       INCA Q 115
       INCA Q 115
       INCA Q 115
       INCA Q 115
       INCA Q 115
       INCA Q -1 Thing_Raise(0)
       Stop
	   
	   Death.Plasma:
	   Death.Flames:
	   Death.Fire:
	   goto Xdeath
	   
   XDeath:
   		TNT1 A 0 A_PlaySound("BOSCRU")
    TNT1 A 0 A_SetTranslucent(1.0)
       INCX A 10 Bright A_Playsound("monster/incexp")
       INCX BC 5 Bright
	TNT1 A 0 A_SpawnItem ("CrueltyBonus5Health")
       INCX D 5 Bright A_NoBlocking
	       TNT1 A 0 A_Jump(64,2)
		   	   	TNT1 A 0 A_SpawnItem ("CrueltyBonus5Armor")
       INCX D 0 Bright A_SpawnItem("HS",0,32)
       INCX EFGHIJ 5 Bright
       INCX K -1
   Raise:
       INCA Q 0 A_KillChildren
	   	   	TNT1 A 0 A_PlaySound("NYET")
       INCA QPONML 5
       Goto See
   }
}


//new visible puff
ACTOR DIPuff
{
   +NOBLOCKMAP
   +NOGRAVITY
   +RANDOMIZE
   +PUFFONACTORS
   RENDERSTYLE Add
   DamageType IncarnateShot
   States
   {
   Spawn:
	  INPF ABCDE 3 Bright
      Stop
   }
}


//old invisible puff
/*ACTOR DIPuff
{
   Radius 0
   Height 1
   Speed 0
   PROJECTILE
   RENDERSTYLE NONE
   DamageType IncarnateShot
   States
   {
   Spawn:
      TNT1 A 2 Bright
      Stop
   }
}*/
//End of Incarnate