ACTOR RedImp : Imp 
{
	Health 200
	Speed 10
	PainChance 70
	DropItem "LifeEssence" 100
	DropItem "ArmorBonusMax" 100
	DropItem "DemonAmmo" 100
    SeeSound "superimp/sight"
	PainSound "voidimp/pain"
	DeathSound "superimp/death"
	ActiveSound "superimp/active"
	bloodcolor "Red"
	PainSound "TImp/pain"
	+MissileMore
	+FloorClip
	+QUICKTORETALIATE
	Tag "Dark imp"
    Obituary "%o was burnt up by a Dark Imp."
	HitObituary "%o got torn up by a Dark Imp."
    States
    {
	Spawn:
	    RRKS A 10 A_Look
        Loop
	See:
		RRKS AABB 3 A_Chase
		TNT1 A 0 A_SpawnItem("HumanishStep",0,0,0,0)
		RRKS CCDD 3 A_Chase
		TNT1 A 0 A_SpawnItem("HumanishStep",0,0,0,0)	
        Loop
	Melee:
        RRKS EF 5 A_FaceTarget
        RRKS G 5 A_MeleeAttack
        RRKS FE 5 A_FaceTarget		
        Goto See
	Missile:
		TNT1 A 0 A_Jump(100,"QuickCombo")
		TNT1 A 0 A_Jump(45,"HomingShots")
		TNT1 A 0 A_Jump(60,"BigBall")
		TNT1 A 0 A_Jump(40,"Lazer")
		Goto See
	Lazer:
		TNT1 A 0 Bright A_PlaySound ("legimp/chargingsound")
		TNT1 A 0 A_ChangeFlag("NOPAIN",1)
		RRKS FFFFFFFFFFF 5 A_SpawnItemEx("RedImpLineSpawner")
		RRKS EEEEEEEEEEE 4 A_SpawnItemEx("RedImpLineSpawner")
		TNT1 A 0 A_FaceTarget
		RRKS G 3 A_CustomMissile ("CardinalRail", 34, 0, 0)
		TNT1 A 0 A_ChangeFlag("NOPAIN",0)
		Goto See
	QuickCombo:
		RRKS EF 3 A_FaceTarget
		RRKS G 4 A_CustomMissile("NewImpBall", 34, 0, 0)
		RRKS G 4 A_CustomMissile("NewImpBall", 34, 0, 0)
		RRKS G 4 A_CustomMissile("NewImpBall", 34, 0, 0)
		Goto See
	HomingShots:
		RRKS EF 6 A_FaceTarget
		TNT1 A 0 Bright A_CustomMissile("DarkImpHellStaffBall", 15, 0, -20)
		TNT1 A 0 Bright A_CustomMissile("DarkImpHellStaffBall", 15, 0, 20)
		RRKS G 4
		Goto See
	BigBall:
		RRKS EF 6 A_FaceTarget
		RRKS G 4 A_CustomMissile ("CerebralImpFireball", 34, 0, 0)
		Goto See
	Pain:
    	RRKS H 6 A_Pain
    	Goto See
	Death:
        RRKS J 8 A_Scream
        RRKS K 6
        RRKS L 6 A_Fall
        RRKS M -1
        Stop
	Raise:
		TNT1 A 0
		TNT1 A 0 A_SpawnItemEx("VileHealEffect",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
        RRKS TSRQPON 5
        Goto See
	}
}

ACTOR DarkImpHellStaffBall : CacoHellStaffBall1
{
  Speed 25
  Damage 5
  Scale 0.8
  +SEEKERMISSILE
  +RIPPER
  +NOBOSSRIP
  +BLOODLESSIMPACT
  +FORCERADIUSDMG
  States
  {
  Spawn:
    HPRO AABBCC 1 Bright A_SpawnItem("HellStaffTrail")
	TNT1 A 0 A_SeekerMissile(30, 45)
    Loop
  Death:
	TNT1 A 0
	TNT1 A 0 A_Explode(15,20)
	TNT1 AAAAAAAAA 0 A_SpawnItemEx("HellStaffParticle",0,0,0,frandom(-4,4),frandom(-4,4),frandom(-4,4),random(0,359))
    CLBA B 1 Bright A_FadeOut(0.2)
    Goto Death+2
  }
}

Actor RedImpLineSpawner : RedPowerLine
{
    +NoTimeFreeze
}