// ------------------------------------------------------------
//   Revenant
// ------------------------------------------------------------

ACTOR BonerBall : RevenantTracer
{
	+forcexybillboard
	Radius 4
	Height 6
	Scale 0.6
	Decal "RevenantScorch"
	seesound none
	Speed 8
	Damage 5
	translation 2
	States
	{
	Spawn:
		FATB A 0
		FATB A 0 A_PlaySound ("skeleton/attack")
		FATB AB 2
	See:
//		FATB A 0 A_JumpIfTargetInLOS ("Blind",360,1)
		FATB A 2 BRIGHT A_SpawnItemEx ("BonerBallTail", -6,0,0, (velx*0.01),(vely*0.01),(velz*0.01), 0,160)
		FATB A 0 A_JumpIf (z-floorz<24, "Tread")
		FATB B 2 BRIGHT A_SeekerMissile (18, 48)
		FATB B 0 A_Jump (64, 2)
		FATB B 0 A_BishopMissileWeave
		FATB A 0 A_SpawnItemEx ("BonerBallTail", -6,0,0, (velx*0.005),(vely*0.005),(velz*0.005), 0,160)
		Loop
	Tread:
		FATB A 0 ThrustThingZ (0, random(3,6), 0, 0)
		goto See
	Blind:
		FATB A 1 BRIGHT A_CheckSight (1)
		goto See
		FATB A 2 BRIGHT A_SpawnItemEx ("BonerBallTail", -6,0,0, (velx*0.01),(vely*0.01),(velz*0.01), 0,160)
		FATB B 2 BRIGHT A_SpawnItemEx ("BonerBallTail", -6,0,0, (velx*0.005),(vely*0.005),(velz*0.005), 0,160)
		FATB A 2 BRIGHT A_SpawnItemEx ("BonerBallTail", -6,0,0, (velx*0.01),(vely*0.01),(velz*0.01), 0,160)
		FATB B 2 BRIGHT A_SpawnItemEx ("BonerBallTail", -6,0,0, (velx*0.005),(vely*0.005),(velz*0.005), 0,160)
		FATB A 0 A_JumpIf (z-floorz>24, "Blind")
		FATB A 0 ThrustThingZ (0, random(3,6), 0, 0)
		FATB A 0 A_JumpIf (z-floorz<48, "Blind")
		FATB A 0 ThrustThingZ (0, random(2,4), 1, 0)
		goto See
	Death:
		TNT1 AAAAAAA 0 A_SpawnItemEx ("WallChunk", random(-4,4),random(-4,4),random(2,14), random(-6,6),random(-6,6),random(-4,18), random(0,360),160)
		MISX A 4 BRIGHT A_Explode (8, 64)
		TNT1 A 0 A_SpawnItemEx ("HDSmoke", 0,0,-2, -1,0,1, 0,160)
		BAL2 D 4 BRIGHT
		MISL CCCC 1 A_FadeOut (0.1)
		goto Fade
	Fade:
		MISL D 1 A_FadeOut (0.1)
		loop
	}
}

ACTOR BonerBallTail
{
	+nointeraction
	+forcexybillboard
	renderstyle add
	scale 0.8
	alpha 0.8
	translation 2
	states
	{
	spawn:
		BAL7 AB 4 A_FadeOut (0.05)
		Loop
	}
}

ACTOR Boner : Revenant replaces Revenant
{
	Scale 0.7
	+DONTHURTSPECIES
	+NOBLOOD
	+FASTER
	Speed 8
	Mass 60
	Obituary "%o got slapped by a boner and two balls."
	HitObituary "%o got slapped by a boner."
	damagefactor "Thermal", 1.1
	damagefactor "SmallArms0", 0.9
	damagefactor "SmallArms1", 0.9
	damagefactor "SmallArms2", 0.8
	damagefactor "SmallArms3", 0.7
	States
	{
	See:
		SKEL AABBCCDDEEFF 2 A_Chase
		loop
	Missile:
		SKEL I 8 A_FaceTarget
		SKEL J 0 BRIGHT A_CustomMissile ("BonerBall", 42, 4, -24, 2, 4)
		SKEL J 10 BRIGHT A_CustomMissile ("BonerBall", 42, -4, 24, 2, 4)
		SKEL K 10
		Goto See
	Death:
		TNT1 A 0 A_GivetoTarget("HDKillCount",1)
		TNT1 A 0 ACS_ExecuteAlways(558,0,0,1,23)
		TNT1 A 0 A_SpawnItemEx ("tempshieldpuff", 0,0,0, velx,vely,velz, 0,40)
		SKEL LM 7
		TNT1 A 0 A_SpawnItemEx ("tempshield2puff", 0,0,0, velx,vely,velz, 0,40)
		SKEL N 7 A_Scream
		SKEL O 7 A_NoBlocking
		SKEL P 7
		SKEL Q -1
		stop
	}
}

