Actor WarlordImp
{
Monster
Health 600
Height 56
Radius 20
Mass 1000
Speed 7
Painchance "Mine", 128
Painchance "Acid", 0
Painchance "Fire", 0
Painchance "SatanGuard", 0
Painchance "AdvancedImp", 0
Painchance "Shadow", 0
PainChance 25
Damage (13)
MeleeRange 72
BloodColor BLue
+DropOFF
+FLOORCLIP
+NoTarget
+SlidesOnWalls
+MissileMore
+QuickToRetaliate
+DONTHARMSPECIES
Species "Imps"
Species "SatanGuard"
Damagetype "SatanGuard"
Damagefactor "AdvancedImp", 0.2
Damagefactor "Catharsi15k", 0.2
Damagefactor "Catharsi10K", 0.2
Damagefactor "Acid", 0.5
Damagefactor "Fire", 0.1
//No Infighting
DamageFactor "SatanGuard", 0.0
Damagefactor "Nightshade", 0.0
Damagefactor "Shadow", 0.0
Damagefactor "CurseComet", 0.0
Damagefactor "HellionFire", 0.0
DropItem "BossLifeEssence", 200, 8
DropItem "NemesisArmorBonus8", 200
SeeSound "Wlord/sight"
PainSound "Wlord/pain"
DeathSound "Wlord/death"
ActiveSound "Wlord/active"
Obituary "%o was carbonized by a Corrupt Pawn."
HitObituary "%o's skull was crushed by a Corrupt Pawn."
Tag "\c[l7]Corrupt \c[l5]Pawn\c-"
States
	{
	Spawn:
		WARI A 10 A_Look
		Loop
	See:
		WARI AAAABBBB 1 A_Chase
		TNT1 A 0 A_SpawnItemEx("HumanishStep2",0,0,2,0,0,-20)
		WARI CCCCDDDD 1 A_Chase
		TNT1 A 0 A_SpawnItemEx("HumanishStep2",0,0,2,0,0,-20)
		Loop
	Melee:
		WARI A 1
		TNT1 A 0 A_JumpIfInventory("ImpSuperMelee",3,"SuperMelee")
		TNT1 A 0 A_Jump(17,"SMeleeStart")
	Melee2:
		WARI EEEE 1 A_FaceTarget
		TNT1 A 0 A_PlaySound("implord/maceswing")
		WARI FFFFGG 1 A_FaceTarget
		WARI G 1 A_CustomMeleeAttack(random(15,35),"implord/macehit","None","SatanGuard")
		WARI GFE 2
		GoTo See
	SMeleeStart:
		WARI O 1 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI O 1 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI O 1 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI O 1 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI O 1 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI O 1 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI O 1 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI O 1 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI O 1 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		GoTo SuperMelee2
	SuperMelee:
		TNT1 A 0 A_TakeInventory("ImpSuperMelee",3)
		TNT1 A 0
		TNT1 A 0 A_PlaySound("implord/maceswing")
	SuperMelee2:
		WARI PPPPQQQ 1 Bright A_FaceTarget
		TNT1 A 0 A_CustomMissile("WarlordMeleeAttack",33,0,0)
		WARI Q 1 Bright A_CustomMeleeAttack(random(35,56),"implord/macehit","None")
		WARI PPFFE 2
		GoTo See
	Missile:
		TNT1 A 0
		TNT1 A 0 A_JumpIfTargetInLOS("FireBalls",90,JLOSF_CLOSENOJUMP|JLOSF_DEADNOJUMP|JLOSF_TARGETLOS,1000,216)
		TNT1 A 0 A_Jump(75,"FireBalls")
		TNT1 A 0 A_GiveInventory("ImpSuperMelee",1)
		TNT1 A 0 A_PlaySound("Wlord/sIGHT",0,1.0,0)
		WARI O 1 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI O 1 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI O 1 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI O 1 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI O 1 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI O 1 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI O 1 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI O 1 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI O 1 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI P 1 Bright A_Recoil(-56)
		TNT1 A 0 ThrustThingZ(0,11,0,0)
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI P 1 Bright A_JumpIfCloser(72,"SuperMelee")
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI P 1 Bright A_JumpIfCloser(72,"SuperMelee")
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI P 1 Bright A_JumpIfCloser(72,"SuperMelee")
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI P 1 Bright A_JumpIfCloser(72,"SuperMelee")
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI P 1 Bright A_JumpIfCloser(72,"SuperMelee")
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI P 1 Bright A_JumpIfCloser(72,"SuperMelee")
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		TNT1 A 0 A_Recoil(-16)
		WARI P 1 Bright A_JumpIfCloser(72,"SuperMelee")
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI P 1 Bright A_JumpIfCloser(72,"SuperMelee")
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI P 1 Bright A_JumpIfCloser(72,"SuperMelee")
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI P 1 Bright A_JumpIfCloser(72,"SuperMelee")
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI P 1 Bright A_JumpIfCloser(72,"SuperMelee")
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI P 1 Bright A_JumpIfCloser(72,"SuperMelee")
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI P 1 Bright A_JumpIfCloser(72,"SuperMelee")
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI P 1 Bright A_JumpIfCloser(72,"SuperMelee")
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI P 1 Bright A_JumpIfCloser(72,"SuperMelee")
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI P 1 Bright A_JumpIfCloser(72,"SuperMelee")
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI P 1 Bright A_JumpIfCloser(72,"SuperMelee")
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI P 1 Bright A_JumpIfCloser(72,"SuperMelee")
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI P 1 Bright A_JumpIfCloser(72,"SuperMelee")
		TNT1 A 0 A_Recoil(-16)
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI P 1 Bright A_JumpIfCloser(72,"SuperMelee")
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI P 1 Bright A_JumpIfCloser(72,"SuperMelee")
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI P 1 Bright A_JumpIfCloser(72,"SuperMelee")
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI P 1 Bright A_JumpIfCloser(72,"SuperMelee")
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI P 1 Bright A_JumpIfCloser(72,"SuperMelee")
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI P 1 Bright A_JumpIfCloser(72,"SuperMelee")
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI P 1 Bright A_JumpIfCloser(72,"SuperMelee")
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI P 1 Bright A_JumpIfCloser(72,"SuperMelee")
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI P 1 Bright A_JumpIfCloser(72,"SuperMelee")
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI P 1 Bright A_JumpIfCloser(72,"SuperMelee")
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI P 1 Bright A_JumpIfCloser(72,"SuperMelee")
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI P 1 Bright A_JumpIfCloser(72,"SuperMelee")
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI P 1 Bright A_JumpIfCloser(72,"SuperMelee")
		TNT1 A 0 A_SpawnItemEx("BlueFire",-7,19,53,0,0,6)
		WARI P 1 Bright A_JumpIfCloser(72,"SuperMelee")
		TNT1 A 0 A_Stop
		WARI F 1 A_SkullAttack(18)
		WARI FFFFFFFFF 1
		TNT1 A 0 A_Stop
		GoTo Melee2
	FireBalls:
		TNT1 A 0 A_TakeInventory("ImpSuperMelee",3)
		WARI IIIIIIJJJJJ 1 Bright A_FaceTarget
		TNT1 A 0 HealThing(5)
		TNT1 AA 0 A_SpawnItemEx("BlueShieldFX",random(22,-22),random(22,-22),random(6,58),0,0,0,random(0,360))
		WARI K 1 Bright A_FaceTarget
		TNT1 A 0 HealThing(5)
		TNT1 AA 0 A_SpawnItemEx("BlueShieldFX",random(22,-22),random(22,-22),random(6,58),0,0,0,random(0,360))
		TNT1 A 0 A_CustomMissile("PaladinBall",32,0,random(-20,20))
		WARI K 1 Bright A_FaceTarget
		TNT1 A 0 HealThing(5)
		TNT1 AA 0 A_SpawnItemEx("BlueShieldFX",random(22,-22),random(22,-22),random(6,58),0,0,0,random(0,360))
		TNT1 A 0 A_CustomMissile("PaladinBall",32,0,random(-20,20))
		WARI K 1 Bright A_FaceTarget
		TNT1 A 0 HealThing(4)
		TNT1 AA 0 A_SpawnItemEx("BlueShieldFX",random(22,-22),random(22,-22),random(6,58),0,0,0,random(0,360))
		TNT1 A 0 A_CustomMissile("PaladinBall",32,0,random(-20,20))
		WARI K 1 Bright A_FaceTarget
		TNT1 A 0 HealThing(2)
		TNT1 AA 0 A_SpawnItemEx("BlueShieldFX",random(22,-22),random(22,-22),random(6,58),0,0,0,random(0,360))
		TNT1 A 0 A_CustomMissile("PaladinBall",32,0,random(-20,20))
		WARI JIIIII 2
		GoTo See
	Pain.Mine:
		TNT1 A 0
		TNT1 A 0 A_GiveInventory("MonsterAvoid",1)
	Pain:
		TNT1 A 0 A_TakeInventory("ImpSuperMelee",1)
		WARI H 3 A_Pain
		WARI H 4
		GoTo See
	Death:
		TNT1 A 0
		WARI R 3 A_Scream
		WARI S 3 A_NoBlocking
		WARI TU 4
		TNT1 A 0 A_SpawnItem("BodyCrash")
		WARI V 63000 CanRaise
		Stop
	Raise:
		TNT1 A 0
		TNT1 A 0 A_SpawnItemEx("VileHealEffect",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
		WARI VUTSR 3
		GoTo See
	}
}

Actor WarlordMeleeAttack : PaladinMeleeAttack
{
Speed 73
Damage(5*random(2,4))
+PierceArmor
States
	{
	Spawn:
		TNT1 A 1
		GoTo Death
	}
}

Actor ImpSuperMelee : CustomInventory { Inventory.MaxAmount 3 }