ACTOR FriendMarineQuad : BaseMarine
{
	AttackSound " "
	Translation "112:127=80:111"
	States
	{
	Spawn:
		PQST A 1
		"####" A 0 A_GiveInventory("TargetIsAMarine")
		PQST A 1 A_Look
		Loop
	Missile:
        "####" A 0
        "####" A 0 A_ChangeFlag("NODROPOFF", 1)
		"####" A 0 A_JumpIfInTargetInventory("TargetIsAMarine", 1, "FollowPlayer")
		"####" A 0 A_JumpIfInTargetInventory("IsPlayer", 1, "CheckRangeToWait")
		"####" A 0 A_ChangeFlag("SHOOTABLE", 1)
		"####" A 0 A_ChangeFlag("SOLID", 0)
		"####" A 0 A_JumpIfCloser(200, "Retreat")
		"####" A 0 A_FaceTarget
		"####" A 1 A_Chase ("","")
		"####" A 0 A_JumpIfInTargetInventory("IsPlayer", 1, "CheckRangeToWait")
		Goto Strafe
	Strafe:
		"####" A 0 A_Jump(128, "Attack")
		"####" A 0 ThrustThing(Angle*256/360+64,12,0,0)
		"####" AABBCCDD 2 A_Chase
		"####" A 0 A_Stop
		Goto Attack
	Attack:
		"####" A 0 A_JumpIfInTargetInventory("IsPlayer", 1, "CheckRangeToWait")
		"####" A 0 A_JumpIfInventory("QSGZombieToken",2,"Reload")
		"####" A 0 A_JumpIfCloser(325,"Quad")
	Normal:
		"####" E 15 A_FaceTarget
		"####" A 0 A_PlaySound("weapons/qsgdoublefire")
		"####" A 0 A_GiveInventory("QSGZombieToken",1)
		"####" AAAAAA 0 Bright A_CustomMissile("MonsterTracer2",Random(28,34),0,Random(6,-6),0)
		"####" F 5 Bright A_CustomBulletAttack(11.2,7.1,20,5,"FriendlyMarineBulletPuff") 
		"####" E 15 A_FaceTarget
		"####" A 0 A_JumpIfInventory("QSGZombieToken",2,"Reload")
		Goto See
	Quad:
		"####" A 0 A_JumpIfInventory("QSGZombieToken",1,"Normal")
		"####" E 15 A_FaceTarget
		"####" A 0 A_PlaySound("weapons/qsgfire")
		"####" A 0 A_GiveInventory("QSGZombieToken",2)
		"####" AAAAAAAAAAAA 0 Bright A_CustomMissile("MonsterTracer2",Random(28,34),0,Random(6,-6),0)
		"####" F 5 Bright A_CustomBulletAttack(11.8,7.3,52,5,"FriendlyMarineBulletPuff")
		"####" E 25 A_FaceTarget	
	Reload:
		"####" A 0 A_TakeInventory("QSGZombieToken",2)
		"####" A 0 A_PlaySound("weapons/qsgopen")	
		"####" E 15 A_FaceTarget
		"####" A 0 A_SpawnItemEx("ShellCasing", -8, 6, 36, Random(2, 6), 0, Random(1, 3), Random(-80, -90), 128)
		"####" E 1 A_SpawnItemEx("ShellCasing", -10, 6, 36, Random(2, 6), 0, Random(1, 3), Random(-80, -90), 128)
		"####" A 0 A_SpawnItemEx("ShellCasing", -8, 6, 38, Random(2, 6), 0, Random(1, 3), Random(-80, -90), 128)
		"####" E 2 A_SpawnItemEx("ShellCasing", -10, 6, 38, Random(2, 6), 0, Random(1, 3), Random(-80, -90), 128)
		"####" E 12 A_PlaySound("weapons/qsgshellslide")	
		"####" E 8
		"####" E 12 A_PlaySound("weapons/qsgshellslide")	
		"####" E 8	
		"####" E 10 A_PlaySound("weapons/qsgclose")	
		Goto See
	Retreat:
		"####" A 0
		"####" A 2 A_Recoil(4)
		"####" A 0 A_FaceTarget
		"####" A 0 
		"####" B 2 A_Recoil(4)
		"####" A 0 A_FaceTarget
		"####" A 0 
		"####" C 2 A_Recoil(4)
		"####" A 0 A_FaceTarget
		"####" D 2 A_Recoil(4)
		"####" A 0 A_FaceTarget
		Goto Attack
		}
}