
ACTOR RLRevenantBase : RLMonster
{
  Health 150
  GibHealth -75
  Radius 20
  Height 56
  Speed 10
  Mass 500
  BloodType "RLNashGore_BossBlood", "RLMNullActor", "RLMNullActor"
  
  PainChance 100
  MeleeThreshold 196
  
  DamageFactor "Neutron", 0.5 // Final Doomer Damagetype
  DamageFactor "Maser", 0.5 // Final Doomer Damagetype
  DamageFactor "Scrapper", 3.0 // LegenDoom Damagetype
  
  SeeSound "skeleton/sight"
  MeleeSound "skeleton/melee"
  PainSound "revenant/pain"
  DeathSound "skeleton/death"
  ActiveSound "revenant/active"
  
  +MISSILEMORE 
  +FLOORCLIP
  +NOBLOODDECALS
  
  Obituary "%o was unable to escape a Revenant."
  HitObituary "%o was slugged by a Revenant."
  Species "RLRevenant"
  Tag "Revenant"
  
  //Guncaster extras
   
  //Resists & Weaknesses
	DamageFactor Acid, 1.25
	DamageFactor UndeadGoHome, 2.0
	
	DamageFactor Flesh, 0.8
	DamageFactor Crow, 0.8
	DamageFactor Crow2, 0.8
	DamageFactor Manuel, 0.8
   
  //Chance Effects
	PainChance Crow, 2
	PainChance Crow2, 2
	PainChance Lightning, 96
	PainChance LightningBlue, 16
	PainChance Manuel, 100
	PainChance Fire, 100
  States
  {
//==============================================================================
//					--	GunCaster Compatibility Stuff  --
//==============================================================================
// Override death states to drop the larger mana items in Guncaster
  Death:
    "####" "#" 0 A_StopSound(5)
    "####" "#" 0 A_StopSound(6)
    "####" "#" 0 A_StopSound(7)
    "####" "#" 0 A_StopSound(CHAN_ITEM)
    "####" "#" 0 A_StopSound(CHAN_WEAPON)
    "####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
	"####" "#" 0 A_DropItem("MajorManaPod",-1,224)
    "####" "#" 0 A_JumpIf(1, "DeathMain")
    Goto DeathMain
  XDeath:
    "####" "#" 0 A_StopSound(5)
    "####" "#" 0 A_StopSound(6)
    "####" "#" 0 A_StopSound(7)
    "####" "#" 0 A_StopSound(CHAN_ITEM)
    "####" "#" 0 A_StopSound(CHAN_WEAPON)
    "####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
	"####" "#" 0 A_DropItem("MajorManaPod",-1,224)
    "####" "#" 0 A_JumpIf(1, "XDeathMain")
    Goto XDeathMain
	
	GenericFreezeMana:
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
		"####" "#" 0 A_JumpIf(1,"GenericFreezeDeathMain")
		Goto GenericFreezeDeathMain

//------------------------------------------------------------------------------

	Death.MidasCloseCombat:
	Death.MidasShoelaces:
		TNT1 A 0 A_FaceTarget
		TNT1 A 0 A_NoBlocking
		TNT1 A 0 A_JumpIfInTargetInventory("Mana",0,2)
		TNT1 A 0 A_DropItem("MajorManaPod",-1,54)
		TNT1 A 0 A_Pain
		TNT1 A 0 A_PlaySound("Midas/Touched")
		TNT1 A 0 A_JumpIf(1, "MidasFrame1")
		Goto MidasFrame1
		
	//Scourgebreath
	Death.Breath:
		"####" "#" 0 A_StopSound(5)
		"####" "#" 0 A_JumpIfInTargetInventory("Mana",0,2)
		"####" "#" 0 A_DropItem("MajorManaPod",-1,54)
		"####" "#" 0 A_JumpIf(1,"DeathBreathContinue")
		Goto DeathBreathContinue
		
			//Corpseblast
	CorpseBlastA:
		"####" "#" 0 A_SpawnItemEx("RevenantBlast",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS)
		Stop
	CorpseBlastB:
		"####" "#" 0 A_SpawnItemEx("RevenantBlast",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS)
		"####" "#" 0 A_TakeInventory("CorpseTrigger2",1)
		"####" "#" 0 A_JumpIf(1,"DeathEnd")
		Goto DeathEnd
	CorpseBlastC:
		"####" "#" 0 A_SpawnItemEx("RevenantBlast",0,0,0,0,0,0,0,SXF_TRANSFERPOINTERS)
		"####" "#" 0 A_TakeInventory("CorpseTrigger2",1)
		"####" "#" 0 A_JumpIf(1,"XDeathEnd")
		Goto XDeathEnd
  }
}
