Actor DarkSlayer
{
    Health 800
    Radius 20
    Height 56
    PainChance 90
 	Painchance "BarrelGrab", 0
	Mass 800
    MeleeRange 60
	MeleeThreshold 160
    Speed 25
    Scale 1
    bloodtype slimebloodsplatter
    Monster
    +FLOORCLIP
	+NOTARGET
	+bright
	+DONTCORPSE
	+LOOKALLAROUND
	SeeSound "DarkSlayer/sight"
    PainSound "DarkSlayer/pain"
    DeathSound "DarkSlayer/death"
    Obituary "%o has been scorched by the flames of the Slayer's shadow."
	HitObituary "%o was cut down by the Slayer's shadow."
	dropitem "lilchest" 7
	translation "0:255=%[0.00,0.00,0.00]:[0.30,0.30,0.30]"
	States
	{
	Spawn:
		SLYR A 0
		SLYG A 1 a_look
		loop
	See:
		SLYG AABBCCDD 2 a_chase
		loop
	Missile:
		SLYR A 0
		SLYG E 2 a_facetarget
		TNT1 A 0 a_jump (100,"StrafeShot")
		TNT1 A 0 a_playsound ("doomslayer/infernoshot",CHAN_WEAPON)
		SLYG F 2 Bright a_custommissile ("DarkSlayerFire")
		SLYG E 3 a_facetarget
		TNT1 A 0 a_playsound ("doomslayer/infernoshot",CHAN_WEAPON)
		SLYG F 2 Bright a_custommissile ("DarkSlayerFire")
		SLYG E 3 a_facetarget
		TNT1 A 0 a_playsound ("doomslayer/infernoshot",CHAN_WEAPON)
		SLYG F 2 Bright a_custommissile ("DarkSlayerFire")
		SLYG E 9 a_facetarget
		goto see
	StrafeShot:
		TNT1 A 0 a_playsound ("doomslayer/infernoshot",CHAN_WEAPON)
		SLYG F 2 Bright a_custommissile ("DarkSlayerFire")
		SLYG EEE 0 a_fastchase
		SLYG E 1 a_fastchase
		SLYG E 2 a_facetarget
		TNT1 A 0 a_playsound ("doomslayer/infernoshot",CHAN_WEAPON)
		SLYG F 2 Bright a_custommissile ("DarkSlayerFire")
		SLYG EEE 0 a_fastchase
		SLYG E 1 a_fastchase
		SLYG E 2 a_facetarget
		TNT1 A 0 a_playsound ("doomslayer/infernoshot",CHAN_WEAPON)
		SLYG F 2 Bright a_custommissile ("DarkSlayerFire")
		SLYG E 9 a_facetarget
		goto see
		
	Melee:
		SLYR A 0
		TNT1 A 0 a_playsound ("doomslayer/swordup")
		SLYR A 3 a_facetarget
		TNT1 A 0 a_playsound ("doomslayer/sword",0)
		SLYR E 3 a_facetarget
		SLYR F 1 a_facetarget
		SLYR F 2 A_CustomMeleeAttack(Random(1,2)*9, "doomslayer/swordhit")
		SLYR F 6
		SLYR A 3
		TNT1 A 0 a_playsound ("doomslayer/sworddown")
		goto see
	Pain:
		SLYG G 4 
   		TNT1 A 0 a_takeinventory ("PowerKickedStatus",999)
		SLYG G 4 A_Pain
		Goto see
	Pain.Dazer:
    Pain.Superkick:
    	SLYG G 3
		TNT1 A 0 a_giveinventory ("KickDazer",1)
		SLYG G 3 A_Pain
    	Goto Dazed
    Dazed:
		SLYG G 2
		SLYG G 1 A_SetAngle (angle+15)
		SLYG G 1 A_JumpIfInventory ("PowerKickedStatus",1,"Dazed")
		Goto See
	Death:
		SLYR H 6
		SLYR I 10 A_PlayerScream
		SLYR J 7 A_NoBlocking
		SLYR KL 6
		SLYR M 7
		SLYR N 1 a_playsound ("gibs/bodyhitfloor",0)
		SLYR N random(10,30)
	Burnup:
		SLYR N 1 bright 
		TNT1 A 0 A_SpawnItemEx ("ShadowFire", frandom(-20,20),frandom(-20,20),frandom(3,10), 0,0,random(1,2), 0, SXF_NOCHECKPOSITION, 80)
		TNT1 A 1 bright A_SpawnItemEx ("ShadowFire", frandom(-20,20),frandom(-20,20),frandom(3,10), 0,0,random(1,2), 0, SXF_NOCHECKPOSITION, 80)
		SLYR N 1 bright 
		TNT1 A 0 A_SpawnItemEx ("ShadowFire", frandom(-20,20),frandom(-20,20),frandom(3,10), 0,0,random(1,2), 0, SXF_NOCHECKPOSITION, 80)
		TNT1 A 1 bright A_SpawnItemEx ("ShadowFire", frandom(-20,20),frandom(-20,20),frandom(3,10), 0,0,random(1,2), 0, SXF_NOCHECKPOSITION, 80)
		SLYR N 1 bright 
		TNT1 A 0 A_SpawnItemEx ("ShadowFire", frandom(-20,20),frandom(-20,20),frandom(3,10), 0,0,random(1,2), 0, SXF_NOCHECKPOSITION, 80)
		TNT1 A 1 bright A_SpawnItemEx ("ShadowFire", frandom(-20,20),frandom(-20,20),frandom(3,10), 0,0,random(1,2), 0, SXF_NOCHECKPOSITION, 80)
		SLYR N 1 bright 
		TNT1 A 0 A_SpawnItemEx ("ShadowFire", frandom(-20,20),frandom(-20,20),frandom(3,10), 0,0,random(1,2), 0, SXF_NOCHECKPOSITION, 80)
		TNT1 A 1 bright A_SpawnItemEx ("ShadowFire", frandom(-20,20),frandom(-20,20),frandom(3,10), 0,0,random(1,2), 0, SXF_NOCHECKPOSITION, 80)
		SLYR N 1 bright 
		TNT1 A 0 A_SpawnItemEx ("ShadowFire", frandom(-20,20),frandom(-20,20),frandom(3,10), 0,0,random(1,2), 0, SXF_NOCHECKPOSITION, 80)
		TNT1 A 1 bright A_SpawnItemEx ("ShadowFire", frandom(-20,20),frandom(-20,20),frandom(3,10), 0,0,random(1,2), 0, SXF_NOCHECKPOSITION, 80)
		SLYR N 1 bright 
		TNT1 A 0 A_SpawnItemEx ("ShadowFire", frandom(-20,20),frandom(-20,20),frandom(3,10), 0,0,random(1,2), 0, SXF_NOCHECKPOSITION, 80)
		TNT1 A 1 bright A_SpawnItemEx ("ShadowFire", frandom(-20,20),frandom(-20,20),frandom(3,10), 0,0,random(1,2), 0, SXF_NOCHECKPOSITION, 80)

		SLYR N 1 bright a_jump (90,"reallydie")
		TNT1 A 0 A_SpawnItemEx ("ShadowFire", frandom(-20,20),frandom(-20,20),frandom(3,10), 0,0,random(1,2), 0, SXF_NOCHECKPOSITION, 80)
		TNT1 A 1 bright A_SpawnItemEx ("ShadowFire", frandom(-20,20),frandom(-20,20),frandom(3,10), 0,0,random(1,2), 0, SXF_NOCHECKPOSITION, 80)
		loop
	ReallyDie:
		TNT1 A 0
		TNT1 AAAAAA 0 A_SpawnItemEx ("ShadowFire", frandom(-20,20),frandom(-20,20),frandom(3,10), 0,0,random(1,2), 0, SXF_NOCHECKPOSITION, 80)
		TNT1 A 0 a_dropitem ("roastmeat",35)
		TNT1 AAAA 0 a_spawnitemex ("sunderlootorb", 0, 0, 0, random (-4, 7), random (-6, 3), random (3, 6))
		EVAU AABBCCDD 2 bright
		EVAU AABBCCDD 2 bright
		stop
	}
}


actor DarkSlayerFire
{
    +notimefreeze
	+FORCEXYBILLBOARD	
	+BRIGHT
	species "enemyshot"
	Radius 8
	Height 10
	Speed 25
	Damage (10)
	seesound "wyvern/fireball"
	deathsound "wyvern/fireballhit"
	Projectile
	renderstyle add
	scale 0.80
	alpha 0.95
	translation "0:255=%[0.00,0.00,0.00]:[0.30,0.30,0.30]"
	states
	{
	spawn:
		FX04 A 2 bright
		TNT1 A 0 Bright A_SpawnItemEx("LavaLazerEmber3",frandom(-6,6),frandom(-6,6),frandom(-6,6),frandom(-2,2),frandom(-2,2),frandom(0,1))
		loop
	death:
		TNT1 A 0
		TNT1 A 0 a_stop
		TNT1 AA 0 Bright A_SpawnItemEx("LavaLazerTrail",frandom(-8,8),frandom(-8,8),frandom(-8,8),frandom(-4,4),frandom(-4,4),frandom(0,1))
		TNT1 AA 0 Bright A_SpawnItemEx("LavaLazerEmber3",frandom(-16,16),frandom(-16,16),frandom(-16,16),frandom(-6,6),frandom(-6,6),frandom(0,1))
		TNT1 AAA 0 Bright A_SpawnItemEx("LavaLazerSmoke2",frandom(-4,4),frandom(-4,4),frandom(-4,4),frandom(-1,1),frandom(-1,1),frandom(0,1))
		FX04 BCDEF 2
		stop
	Xdeath:
		TNT1 A 0
		TNT1 A 0 a_stop
		TNT1 AA 0 Bright A_SpawnItemEx("LavaLazerTrail",frandom(-8,8),frandom(-8,8),frandom(-8,8),frandom(-4,4),frandom(-4,4),frandom(0,1))
		TNT1 AA 0 Bright A_SpawnItemEx("LavaLazerEmber3",frandom(-16,16),frandom(-16,16),frandom(-16,16),frandom(-6,6),frandom(-6,6),frandom(0,1))
		TNT1 AA 0 Bright A_SpawnItemEx("LavaLazerSmoke2",frandom(-4,4),frandom(-4,4),frandom(-4,4),frandom(-1,1),frandom(-1,1),frandom(0,1))
		TNT1 AAA 0 A_GiveInventory ("SlayerToolCharger",1, AAPTR_TARGET)
		FX04 B 1 bright
		FX04 CDEF 2
		stop
	}
}

