
ACTOR IMP : doomimp
{
	Game Doom
	SpawnID 5
	Health 90
	Radius 15
	Height 41
	Mass 100
	Speed 8
	
	PainChance 255
	PainChance "BoomHeadShot", 255
	
	Monster
	+FLOORCLIP
	+shootable
	+solid
	SeeSound "imp/sight"
	PainSound "imp/pain"
	DeathSound "imp/death"
	ActiveSound "imp/active"
	HitObituary "$OB_IMPHIT"
	Obituary "$OB_IMP"
	States
	{
	Spawn:
		fast aa 0
		boss a 0 A_SpawnItem("HeadShotBox10", 12, 42,0)
		TROO B 10 A_Look
		Loop
		
	See:
	boss a 0 A_SpawnItem("HeadShotBox10", 16, 42,0)
		TROO AAAA 2 A_Chase
	boss a 0 A_SpawnItem("HeadShotBox10", 16, 42,0)
		TROO BBBB 2 A_Chase
	boss a 0 A_SpawnItem("HeadShotBox10", 16, 42,0)
		TROO CCCC 2 A_Chase
	boss a 0 A_SpawnItem("HeadShotBox10", 16, 42,0)
		TROO DDDD 2 A_Chase
		Loop
		
Melee:
Missile:
		fast a 0 A_Jump(128,"TRIPLE")
		boss a 0 A_SpawnItem("HeadShotBox10", 12, 42,0)
		TROO EF 2 A_FaceTarget
		TROO G 6 A_TroopAttack 
		fast a 0 A_Jump(120,"Melee")
	goto see
		
TRIPLE:
		boss a 0 A_SpawnItem("HeadShotBox10", 12, 42,0)
		TROO EEEFF 5 A_FaceTarget
		TROO GGGGG 0 A_TroopAttack 
		TROO G 8
	goto see
		
		
		
Pain:
		boss a 0 A_SpawnItem("HeadShotBox2", 12, 42,0)
		TROO H 1
		TROO H 1 A_Pain
	Goto See
		
Pain.BoomHeadShot:
		boss a 0 A_FaceTarget
		boss aaa 0 A_CustomMissile ("Blood", 2, 0, random (0, 360), 2, random (0, 360))
		boss a 0 A_SpawnItem("HeadShotBox30", 12, 42,0)
		TROO H 2
		TROO H 1 A_Pain
		TROO H 27
	Goto See
	
Death:
		fast a 0 A_Jump(128,"Death_ALT_Rotate")
		fast a 0 A_Jump(128,"AltDeath")
		TROO I 8
		TROO J 8 A_Scream
		TROO K 6
		TROO L 6 A_NoBlocking
		TROO M -1
	Stop
		
AltDeath:
		SROD A 8
		SROD B 8 A_Scream
		SROD C 6  A_NoBlocking
		SROD DE 6
		SROD E -1
	Stop
		
Death.BoomHeadShot:
		fast a 0 A_Jump(128,"Death_BoomHeadShot_Rotate")
		boss a 0 A_NoBlocking
		boss a 0 A_playsound("HEADSHOOTGORE")
		boss aaaaaaaaaaaaaaaaaaaaa 0 A_CustomMissile ("Blood", 2, 0, random (0, 360), 2, random (0, 360))
		boss a 0 A_XScream
		TROH A 2
		TROH ABCDEF 5
		TROH F -1
	Stop
	
XDeath:
		TROO N 5
		TROO O 5 A_XScream
		TROO P 5
		TROO Q 5 A_NoBlocking
		TROO RST 5
		TROO U -1
	Stop
Raise:
		TROO MLKJI 8
	Goto See

Death_ALT_Rotate:
		boss z 0 a_setscale(-1,1)
		Goto Death+1
Death_BoomHeadShot_Rotate:
		boss z 0 A_SetScale(-1,1)
		Goto Death.BoomHeadShot+1
	}
}





ACTOR DoomImpBall2 : DoomImpBall Replaces DoomImpBall
{
	Game Doom
	SpawnID 10
	Radius 3
	Height 3
	Speed 30
	FastSpeed 50
	Damage 3
	SCALE 0.6
	Projectile
	+RANDOMIZE
	+STRIFEDAMAGE
	+SEEKERMISSILE
	+SCREENSEEKER
	+DONTFALL
	+BLOODSPLATTER
	+LOOKALLAROUND
	RenderStyle Add
	Alpha 1
	Var Int user_stickx;
	Var Int user_sticky;
	Var Int user_stickz;
	Var int user_weave[4];
	SeeSound "imp/attack"
	DeathSound "imp/shotx"
	States
	{
	Spawn:
	boss a 0
	boss a 0 A_SetUserArray(user_weave,0,Random(-1,1))
		boss a 0 A_SetUserArray(user_weave,1,Random(-1,1))
		boss a 0 A_SetUserArray(user_weave,2,Random(-2,2))
		boss a 0 A_SetUserArray(user_weave,3,Random(-2,2))
		
	APARECE:
		TNT1 AA 0 A_Weave(user_weave[0],user_weave[1],user_weave[2],user_weave[3])
		BAL1 A 1 Bright A_SeekerMissile(12,12)
		TNT1 AA 0 A_Weave(user_weave[0],user_weave[1],user_weave[2],user_weave[3])
		BAL1 A 1 Bright A_SeekerMissile(12,12)
		TNT1 AA 0 A_Weave(user_weave[0],user_weave[1],user_weave[2],user_weave[3])
		BAL1 A 1 Bright A_SeekerMissile(12,12)
		TNT1 AA 0 A_Weave(user_weave[0],user_weave[1],user_weave[2],user_weave[3])
		BAL1 A 1 Bright A_SeekerMissile(12,12)
		
		TNT1 AA 0 A_Weave(user_weave[0],user_weave[1],user_weave[2],user_weave[3])
		BAL1 B 1 Bright A_SeekerMissile(12,12)
		TNT1 AA 0 A_Weave(user_weave[0],user_weave[1],user_weave[2],user_weave[3])
		BAL1 B 1 Bright A_SeekerMissile(12,12)
		TNT1 AA 0 A_Weave(user_weave[0],user_weave[1],user_weave[2],user_weave[3])
		BAL1 B 1 Bright A_SeekerMissile(12,12)
		TNT1 AA 0 A_Weave(user_weave[0],user_weave[1],user_weave[2],user_weave[3])
		BAL1 B 1 Bright A_SeekerMissile(12,12)
		TNT1 AA 0 A_Weave(user_weave[0],user_weave[1],user_weave[2],user_weave[3])
		BAL1 B 1 Bright A_SeekerMissile(12,12)
		Loop
	Death:
		BAL1 CDE 6 BRIGHT
		Stop
	}
}









