//===========================================================================
//
// Revenant
//
//===========================================================================
ACTOR skelly replaces revenant
{
	Game Doom
	SpawnID 20
	Health 300
	Radius 20
	Height 56
	Mass 500
	Speed 10
	PainChance 100
	Monster
	MeleeThreshold 196
	+MISSILEMORE 
	+FLOORCLIP
	SeeSound "skeleton/sight"
	PainSound "skeleton/pain"
	DeathSound "skeleton/death"
	ActiveSound "skeleton/active"
	MeleeSound "skeleton/melee"
	HitObituary "$OB_UNDEADHIT"
	Obituary "$OB_UNDEAD"
	Bloodtype "RevenantBlood"
	States
	{
	Spawn:
		SKEL AB 10 A_Look
		Loop
	See:
		SKEL AABBCCDDEEFF 2 A_Chase
		Loop
	Melee:
		SKEL G 1 A_FaceTarget
		SKEL G 6 A_SkelWhoosh
		SKEL H 6 A_FaceTarget
		SKEL I 6 A_SkelFist
		Goto See
	Missile:
		SKEL J 1 BRIGHT A_FaceTarget 
		SKEL J 9 BRIGHT A_FaceTarget
		SKEL K 10 A_SkelMissile
		SKEL KK 10 A_FaceTarget
		Goto See
	Pain:
		SKEL L 5
		SKEL L 5 A_Pain
		Goto See
	Death:
		TNT1 A 0
		TNT1 A 0 A_Jump(128, "Death2")
		SKEL LM 5
		SKEL N 5 A_Scream
		SKEL O 5 A_NoBlocking
		TNT1 A 0 A_CustomMissile("XDeath1", 30,  0, random(0, 360), 2, random(10, 45))
		SKEL P 5
		SKEL Q -1
		Stop
	Death2:
		REVH E 4
		TNT1 AA 0 A_CustomMissile("FlyingBloodParticleFast", 30,  0, random(0, 360), 2, random(0, 90))
		TNT1 AA 0 A_CustomMissile("FlyingBloodParticleBig", 30,  0, random(0, 360), 2, random(10, 45))
		TNT1 A 0 A_CustomMissile("XDeath2b", 40,  0, random(0, 360), 2, random(10, 45))	
		TNT1 A 0 A_CustomMissile("XDeath3b", 40,  0, random(0, 360), 2, random(10, 45))
		REVH F 5 A_Scream
		REVH G 5 A_NoBlocking
		TNT1 H 0 A_CustomMissile("XDeath1", 30,  0, random(0, 360), 2, random(10, 45))
		REVH IJK 5
		REVH L -1
		Stop

	Death.Plasma:
		REVP E 4
		TNT1 AA 0 A_CustomMissile("FlyingBloodParticleFast", 30,  0, random(0, 360), 2, random(0, 90))
		TNT1 AA 0 A_CustomMissile("FlyingBloodParticleBig", 30,  0, random(0, 360), 2, random(10, 45))
		TNT1 A 0 A_CustomMissile("XDeath2b", 40,  0, random(0, 360), 2, random(10, 45))	
		TNT1 A 0 A_CustomMissile("XDeath3b", 40,  0, random(0, 360), 2, random(10, 45))
		REVP F 5 A_Scream
		REVP G 5 A_NoBlocking
		TNT1 A 0 A_SpawnItem("SmokePillar")
		TNT1 H 0 A_CustomMissile("XDeath1", 30,  0, random(0, 360), 2, random(10, 45))
		REVP IJK 5
		REVP L -1
		Stop

	XDeath:
		REVH AB 2
		TNT1 AA 0 A_CustomMissile("FlyingBloodParticleFast", 30,  0, random(0, 360), 2, random(0, 90))
		TNT1 AA 0 A_CustomMissile("FlyingBloodParticleBig", 30,  0, random(0, 360), 2, random(10, 45))
		TNT1 AA 0 A_CustomMissile("XDeath2b", 40,  0, random(0, 360), 2, random(10, 45))	
		TNT1 AA 0 A_CustomMissile("XDeath3b", 40,  0, random(0, 360), 2, random(10, 45))
		TNT1 AA 0 A_CustomMissile("RevenantGib1", 40,  0, random(0, 360), 2, random(30, 45))
		TNT1 A 0 A_CustomMissile("RevenantGib2", 40,  0, random(0, 360), 2, random(30, 45))
		TNT1 A 0 A_CustomMissile("RevenantGib3", 40,  0, random(0, 360), 2, random(30, 45))
		REDX C 3 A_Scream
		REDX D 3 A_NoBlocking
		TNT1 A 0 A_CustomMissile("XDeath1", 30,  0, random(0, 360), 2, random(10, 45))
		REDX EFGHIJ 3
		REDX K -1
		Stop


	Raise:
		SKEL Q 5
		SKEL PONML 5
		Goto See

	Crush:
		TNT1 AAAAAAAAAA 0 A_CustomMissile("FlyingBloodParticleCrushed", 0,  0, random(0, 360), 2, random(0, 90))
		TNT1 AA 0 A_CustomMissile("XDeath2", 50,  0, random(0, 360), 2, random(10, 45))
		TNT1 AA 0 A_CustomMissile("XDeath3", 50,  0, random(0, 360), 2, random(10, 45))
		CRSH A 1
		CRSH A -1
		Stop
	}
}


//===========================================================================
//
// Revenant Tracer
//
//===========================================================================
ACTOR RevenantBalls Replaces RevenantTracer
{
	Game Doom
	SpawnID 53
	Radius 2
	Height 2
	Speed 10
	Damage 10
	Damage (random (38, 42))
	Projectile 
	+SEEKERMISSILE 
	+RANDOMIZE
	SeeSound "skeleton/attack"
	DeathSound "skeleton/tracex"
	Scale 0.5
	States
	{
	Spawn:
		PRJ3 A 2 BRIGHT A_SeekerMissile(0, 5)
		TNT1 A 0 A_SpawnItem("RevenantBallSmoke")
		PRJ3 A 2 BRIGHT  A_SeekerMissile(0, 5)
		TNT1 A 0 A_SpawnItem("RevenantBallSmoke")
		Loop
	Death:
		TNT1 A 0
		TNT1 A 0 A_SpawnItem("ExplosionShrapnelSmall")
		EXPZ AABBCD 1 BRIGHT
		TNT1 A 0 A_SpawnItem("ExplSmokeSmall")
		Stop
		Stop
	}
}


//===========================================================================
//
// Revenant Tracer Smoke
//
//===========================================================================
ACTOR RevenantBallSmoke Replaces RevenantTracerSmoke
{
	+NOBLOCKMAP
	+NOGRAVITY
	+NOTELEPORT
Scale 0.22
States
{
	Spawn:
	TNT1 A 0
	TNT1 A 0 A_CheckSight("Disappear")
	TNT1 A 1
	TNT1 A 0 A_Jump(192, "Spawn1", "Spawn2", "Spawn3", "Spawn4")
	Goto Live

	Spawn1:
	TNT1 A 0
	TNT1 A 0 A_SetScale(0.3, 0.3)
	Goto live 

	Spawn2:
	TNT1 A 0
	TNT1 A 0 A_SetScale(0.25, 0.25)
	Goto live 

	Spawn3:
	TNT1 A 0
	TNT1 A 0 A_SetScale(-0.3, 0.3)
	Goto live 

	Spawn4:
	TNT1 A 0
	TNT1 A 0 A_SetScale(-0.2, 0.2)
	Goto live 


	Live:
	TRL1 AABBC 1 BRIGHT
	TRL1 DE 1
	Stop

	Disappear:
	TNT1 A 0
	Stop
	}
}
