//Yep, It's him, the enforcer from the rise of the triad...>:)

Class Enforced : Actor
{
	//$Category Desgraciados
	//$Title Enforcer
	
	Actor leadeater;
	Default
	{
	Health 140;
	Radius 20;
	Height 56;
	Mass 200;
	Speed 8;
	PainChance 85;
	Monster;
	+FLOORCLIP;
	DamageFactor "Grenade", 0;
	SeeSound "ENSEE";
	PainSound "ENOUCH";
	DeathSound "ENDIE";
	Obituary "%o ate lead";
	Dropitem "Clipbox";
	Scale 0.6;
	Tag "Enforcer";
	}
	States
	{
	Spawn:
		ENFO A 10 A_Look();
		Loop;
	See:
		ENFO BBCCDDEE 3 A_Chase();
		Loop;
	Missile:
		ENFO V 0 A_Jump (50, "Nade");
		ENFO T 5 A_FaceTarget();
		ENFO U 5 ;
		ENFO V 0 Bright A_PlaySound("ENFIRE");
		ENFO V 2 Bright A_SpawnProjectile("ARandomBullet",34, 5, 1, random(1,5)*4, 0, CBAF_NORANDOM);
		ENFO W 2;
		ENFO V 0 Bright A_PlaySound("ENFIRE");
		ENFO V 2 Bright A_SpawnProjectile("ARandomBullet",34, 5, 1, random(1,5)*4, 0, CBAF_NORANDOM);
		ENFO W 2;
		ENFO V 0 Bright A_PlaySound("ENFIRE");
		ENFO V 2 Bright A_SpawnProjectile("ARandomBullet",34, 3, 1, random(1,5)*4, 0, CBAF_NORANDOM);
		ENFO W 2;
		ENFO V 0 Bright A_PlaySound("ENFIRE");
		ENFO V 2 Bright A_SpawnProjectile("ARandomBullet",34, 6, 1, random(1,5)*4, 0, CBAF_NORANDOM);
		ENFO W 4;
		ENFO W 4 A_MonsterRefire (40, "see");
		Goto Missile+2;
	Nade:
		ENFZ A 4 A_PlaySound("ENTHRO");
		ENFZ B 4;
		ENFZ C 4;
		ENFZ D 4;
		ENFZ E 4;
		ENFZ F 4 A_spawnprojectile ("ENFGranade");
		ENFZ G 4;
		ENFZ H 4;
		Goto See;
	Pain:
		TNT1 A 0 A_Jump (256, "Pain1","Pain2","Pain3","Pain4");
		Goto See;
	Pain1:
		ENFO G 3;
		ENFO G 3 A_Pain();
		Goto See;
	Pain2:
		ENFO F 3;
		ENFO F 3 A_Pain();
		Goto See;
	Pain3:
		ENFO H 3;
		ENFO H 3 A_Pain();
		Goto See;
	Pain4:
		ENFO I 3;
		ENFO I 3 A_Pain();
		Goto See;
	Death:
		TNT1 A 0 A_Jump (256, "Death1","Death2");
		Stop;
	Death1:
		ENFO J 5;
		ENFO K 5 A_Scream();
		ENFO L 5 A_NoBlocking();
		ENFO M 5;
		ENFO N -1;
		Stop;
	Death2:
		ENFO O 5;
		ENFO P 5 A_Scream();
		ENFO Q 5 A_NoBlocking();
		ENFO R 5;
		ENFO S -1;
		Stop;
	Raise:
		ENFO M 5;
		ENFO LKJ 5;
		Goto See;
	}
}

Class ENFGranade : Actor
{
	Default
	{
	Radius 8;
	Height 8;
	Speed 25;
	Damage 20;
	Projectile;
	-NOGRAVITY;
	+RANDOMIZE;
	+DEHEXPLOSION;
	+GRENADETRAIL;
	BounceType "Doom";
	Gravity 0.5;
	Scale 0.8;
	DeathSound "GNEXP";
	BounceSound "GNBOU";
	Obituary "%o caught a grenade";
	DamageType "Grenade";
	}
	States
	{
	Spawn:
		EXBA ABCD 3 Bright;
		Loop;
	Death:
		EXBA E 2 Bright A_Explode(); 
		EXBA F 2 Bright;
		EXBA G 2 Bright;
		EXBA H 2 Bright;
		EXBA I 2 Bright;
		EXBA J 2 Bright;
		EXBA K 2 Bright;
		EXBA L 2 Bright;
		EXBA M 2 Bright;
		EXBA N 2 Bright;
		EXBA O 2 Bright;
		EXBA P 2 Bright;
		EXBA Q 2 Bright;
		EXBA S 2 Bright;
		EXBA T 2 Bright;
		EXBA U 2 Bright;
		EXBA V 2 Bright;
		EXBA W 2 Bright;
		EXBA Y 2 Bright;
		Stop;
	}
}

Class ARandomBullet : Actor
{
	Default
	{
	Radius 8;
	Height 5;
	Speed 75;
	Damage 12;
	damagetype "Powder";
	scale 1;
	Projectile;
	+RANDOMIZE;
	Obituary "A Random bullet just stung %o's head.";
	}
	States
	{
	Spawn:
		CUFF A -1 BRIGHT;
		Loop;
	Death:
		CUFF AAABBBCCCDDD 1 BRIGHT;
		Stop;
	}
}