Actor ImpVanguard : ImpSkirmisher
{
    Speed 14
	+missilemore
    Obituary "%o was struck down from afar by an Imp Vanguard."
    HitObituary "%o was crushed by an Imp Vanguard."
	dropitem "lilchest" 8
	translation "208:223=112:127", "88:106=160:167", "80:87=224:231", "107:111=31:43", "152:159=30:47", "9:12=40:47"
	states
	{
    Missile:
		TNT1 A 0
		TNT1 A 0 a_jumpifinventory ("MaceCount",2,"PowerThrow")
		WARI E 9 A_FaceTarget
		TNT1 A 0 A_PlaySound("implord/maceswing")
        WARI F 5 A_FaceTarget
		TNT1 A 0 a_giveinventory ("MaceCount",1)
        WARI G 5 A_CustomMissile ("throwingmace", 40)
		goto see
    PowerThrow:
		WARI E 10 A_FaceTarget
		TNT1 A 0 A_PlaySound("implord/maceswing")
        WARI F 4 A_FaceTarget
 		TNT1 A 0 a_takeinventory ("MaceCount",99)
        WARI G 5 A_CustomMissile ("RedMace", 40)
		goto see

    Death:
        TNT1 A 0 A_FaceTarget
        TNT1 A 0 A_SpawnItemEx("droppedMace", 0, 0, 32, 4, 0, 6, -90, 128)
        WARI R 0 A_SpawnItemEx("droppedShield", 0, 0, 32, 5, 0, 4, 90, 128)
        WARI R 0 A_noblocking
        WARI R 1 A_Scream
        TNT1 A 0 A_FaceTarget
		TNT1 A 0 thrustthingz (0,30,0,1)
		TNT1 A 0 ThrustThing(angle*256/360+128, 4, 0, 0)		
        WARI R 2 
        WARI S 6 
        WARI T 5
	    WARI U 4 
		TNT1 A 0 a_jump (9,"DarkPortal")
        WARI V -1
        Stop
	DarkPortal:
		TNT1 A 0
		WARI V random(50,180) 
		TNT1 A 0 a_playsound ("Darkportal/form",0)
		WARI V 3 Thing_SetTranslation(0, 4242)
		HWRP ABCD 1
		TNT1 A 1 a_spawnitemex ("WeakPortal")
		stop		
    Xdeath:
		TNT1 A 0
		TNT1 A 1 a_scream
        WARI R 0 A_noblocking
		TNT1 A 0 a_spawnitem ("bigbloodsplatter")
		TNT1 AAAAAAAA 0 a_spawnitemex ("newbloodsplatter",0,0,24)       
		//TNT1 AAAAAAAA 0 a_spawnitem ("newbloodsplatter")       
		TNT1 A 0 A_SpawnItemEx("droppedMace", 0, 0, 32, 4, 0, 0, -90, 128)
        TNT1 A 0 A_SpawnItemEx("droppedShield", 0, 0, 32, 5, 0, 0, 90, 128)
		TNT1 AAAAAA 0 a_spawnitemex("bonegib",0,0,0,random(-10,10),random(-10,10),random(5,10))
		TNT1 AAA 0 a_spawnitemex("bonegib",0,0,0,random(-10,10),random(-10,10),random(5,10))
		ISKL AAAA 0 a_spawnitemex("hipbonegib",0,0,0,random(-10,10),random(-10,10),10)
		ISKL A 0 a_spawnitemex("ribbonegib",0,0,0,random(-10,10),random(-10,10),12)
		ISKL A 0 a_spawnitemex("impskull",0,0,0,random(-10,10),random(-10,10),12)
		TNT1 A 0 thrustthingz (0,30,0,1)
		TNT1 A 0 ThrustThing(angle*256/360+128, 4, 0, 0)
		ISKL A 4
		TNT1 A 0 a_jump (9,"GibbedDarkPortal")
		ISKL B -1
		stop
	GibbedDarkPortal:
		TNT1 A 0
		ISKL B random(50,180) 
		TNT1 A 0 a_playsound ("Darkportal/form",0)
		ISKL B 3 Thing_SetTranslation(0, 4242)
		HWRP ABCD 1
		TNT1 A 1 a_spawnitemex ("WeakPortal")
		stop
	}
}





actor RedMace : ThrowingMace
{
	+notimefreeze
	+BLOODSPLATTER
	projectile
	+FORCEXYBILLBOARD	
	+THRUSPECIES
	species "enemyshot"
	projectilekickback 4000
	Radius 9
	height 8
	scale 0.90
	Damage (18)
	Speed 24
	translation "80:111=176:191", "5:8=191:191", "8:8=185:191", "3:3=187:187"
	states
	{
	spawn:
		AEMC A 1
		TNT1 A 0 a_spawnitemex ("MaceTrail1")
		AEMC B 1
		TNT1 A 0 a_spawnitemex ("MaceTrail2")
		AEMC C 1
		TNT1 A 0 a_spawnitemex ("MaceTrail3")
		AEMC D 1
 		TNT1 A 0 a_spawnitemex ("MaceTrail4")
        TNT1 A 0 A_PlaySound("implord/maceswing",CHAN_VOICE,0.50,0,1.5)
		AEMC E 1
		TNT1 A 0 a_spawnitemex ("MaceTrail5")
		AEMC F 1
		TNT1 A 0 a_spawnitemex ("MaceTrail6")
		AEMC G 1
		TNT1 A 0 a_spawnitemex ("MaceTrail7")
		AEMC H 1
		TNT1 A 0 a_spawnitemex ("MaceTrail8")
        TNT1 A 0 A_PlaySound("implord/maceswing",CHAN_VOICE,0.50,0,1.5)
		loop
	death:
		TNT1 A 0 a_nogravity
		TNT1 A 0 a_playsound ("subweapons/miss")
		SWMS ABC 3 bright
		stop
	Crash:
		TNT1 A 0 a_nogravity
		TNT1 A 0 a_playsound ("subweapons/miss")
		SWMS ABC 3 bright
		stop
	xdeath:
		TNT1 A 0 a_nogravity
		TNT1 A 0 a_playsound ("implord/macehit")
		SWHT ABC 3 bright
		stop
	}
}


actor MaceTrail1
{
	+NOCLIP
	+clientsideonly
	+NOBLOCKMAP
	+NOGRAVITY
	+NOTELEPORT
	renderstyle add
	scale 0.80
	alpha 0.5
	States
	{
	Spawn:
		TNT1 A 0
		AEMC A 2 A_FadeOut(0.1)
		loop
	Death:
		TNT1 A 0
		TNT1 A 1
		stop
	}
}

Actor MaceTrail2 : MaceTrail1
{
	states
	{
	Spawn:
		TNT1 A 0
		AEMC B 2 A_FadeOut(0.1)
		loop
	}
}

Actor MaceTrail3 : MaceTrail1
{
	states
	{
	Spawn:
		TNT1 A 0
		AEMC C 2 A_FadeOut(0.1)
		loop
	}
}

Actor MaceTrail4 : MaceTrail1
{
	states
	{
	Spawn:
		TNT1 A 0
		AEMC D 2 A_FadeOut(0.1)
		loop
	}
}

Actor MaceTrail5 : MaceTrail1
{
	states
	{
	Spawn:
		TNT1 A 0
		AEMC E 2 A_FadeOut(0.1)
		loop
	}
}

Actor MaceTrail6 : MaceTrail1
{
	states
	{
	Spawn:
		TNT1 A 0
		AEMC F 2 A_FadeOut(0.1)
		loop
	}
}

Actor MaceTrail7 : MaceTrail1
{
	states
	{
	Spawn:
		TNT1 A 0
		AEMC G 2 A_FadeOut(0.1)
		loop
	}
}

Actor MaceTrail8 : MaceTrail1
{
	states
	{
	Spawn:
		TNT1 A 0
		AEMC H 2 A_FadeOut(0.1)
		loop
	}
}

actor MaceCount : inventory
{inventory.maxamount 2}
