actor LeeroyGrosse : GangstaGrosse // Gangsta's cousin (Spawns from Gangsta Grosse)
{
//Creator: Titanium
//Origin: Nexus Infinity
//Sprite: LEEG
//Title: "Leeroy Grosse"
  -COUNTKILL
  Scale 1.25
  Health 3600
  PainSound "LGrosse/pain"
  DeathSound "LGrosse/death"
  ActiveSound ""
  Obituary "%o loses a fight against Gangsta's cousin Leeroy Grosse."
  Tag "\c[c8]Leeroy \c[w9]Grosse\c-"
  var int user_attack;
  states
  {
	Spawn:
		LEEG A 10 A_Look
		Loop
	Idle:
		TNT1 A 0 A_ChangeFlag("NOPAIN",0)
		TNT1 A 0 HealThing(1)
		LEEG AAAA 3 A_Wander
		TNT1 A 0 A_Look
		TNT1 A 0 HealThing(1)
		LEEG BBBB 3 A_Wander
		TNT1 A 0 A_Look
		TNT1 A 0 HealThing(1)
		TNT1 A 0 A_Jump(12,"RushIdle")
		TNT1 A 0 A_SpawnItemEx("DeathKnightStep",0,0,5,0,0,-20)
		LEEG CCCC 3 A_Wander
		TNT1 A 0 A_Look
		TNT1 A 0 HealThing(1)
		LEEG DDDD 3 A_Wander
		TNT1 A 0 A_Look
		TNT1 A 0 A_SpawnItemEx("DeathKnightStep",0,0,5,0,0,-20)
		TNT1 A 0 A_Jump(12,"RushIdle")
		Loop
	RushIdle:
		TNT1 A 0 HealThing(1)
		LEEG AAAA 1 A_Wander
		TNT1 A 0 A_Look
		LEEG BBBB 1 A_Wander
		TNT1 A 0 A_Look
		TNT1 A 0 A_SpawnItemEx("DeathKnightStep",0,0,5,0,0,-20)
		LEEG CCCC 1 A_Wander
		TNT1 A 0 A_Look
		LEEG DDDD 1 A_Wander
		TNT1 A 0 A_Look
		TNT1 A 0 A_SpawnItemEx("DeathKnightStep",0,0,5,0,0,-20)
		TNT1 A 0 A_Jump(12,"Idle")
		Loop
	See:
		TNT1 A 0
		LEEG A 10
		TNT1 A 0 A_SpawnItemEx("DeathKnightStep",0,0,5,0,0,-20)
		Goto SeeLoop
	SeeLoop:
		TNT1 A 0 A_ChangeFlag("NOPAIN",0)
		LEEG AAAABBBB 1 A_Chase
		TNT1 A 0 HealThing(1)
		TNT1 A 0 A_JumpIfInTargetLOS("Avoid",360,JLOSF_DEADNOJUMP,1000)
		TNT1 A 0 A_SpawnItemEx("DeathKnightStep",0,0,5,0,0,-20)
		TNT1 A 0 A_Jump(12,"Rush")
		LEEG CCCCDDDD 1 A_Chase
		TNT1 A 0 HealThing(1)
		TNT1 A 0 A_JumpIfInTargetLOS("Avoid",360,JLOSF_DEADNOJUMP,1000)
		TNT1 A 0 A_SpawnItemEx("DeathKnightStep",0,0,5,0,0,-20)
		TNT1 A 0 A_Jump(12,"Rush")
		Loop
	Rush:
		TNT1 A 0 HealThing(1)
		LEEG AAAABBBB 1 A_Chase
		TNT1 A 0 A_SpawnItemEx("DeathKnightStep",0,0,5,0,0,-20)
		LEEG CCCCDDDD 1 A_Chase
		TNT1 A 0 A_SpawnItemEx("DeathKnightStep",0,0,5,0,0,-20)
		TNT1 A 0 A_Jump(12,"SeeLoop")
		Loop
	See2:
		TNT1 A 0
		TNT1 A 0 A_TakeInventory("Tic",999999)
		TNT1 A 0 A_ChangeFlag("NOPAIN",0)
		TNT1 A 0 A_JumpIf(user_attack < 1,"SeeLoop2")
		TNT1 A 0 A_SetUserVar("user_attack",0)
		TNT1 A 0 A_PlaySound("weapons/expmgunspinstop",CHAN_WEAPON,1.0,0)
		Goto SeeLoop2
	SeeLoop2:
		LEEG AAAA 2 A_Chase//("Melee","",CHF_NOPLAYACTIVE)
		TNT1 A 0 HealThing(1)
		TNT1 A 0 A_JumpIfTargetInLOS("Missile",90,JLOSF_CLOSENOJUMP|JLOSF_DEADNOJUMP|JLOSF_TARGETLOS,1000,200)
		TNT1 A 0 A_JumpIfInTargetLOS("Avoid",360,JLOSF_DEADNOJUMP,1000)
		LEEG BBBB 2 A_Chase//("Melee","",CHF_NOPLAYACTIVE)
		TNT1 A 0 A_JumpIfTargetInLOS("Missile",90,JLOSF_CLOSENOJUMP|JLOSF_DEADNOJUMP|JLOSF_TARGETLOS,1000,200)
		TNT1 A 0 A_JumpIfInTargetLOS("Avoid",360,JLOSF_DEADNOJUMP,1000)
		TNT1 A 0 A_SpawnItemEx("DeathKnightStep",0,0,5,0,0,-20)
		LEEG CCCC 2 A_Chase//("Melee","",CHF_NOPLAYACTIVE)
		TNT1 A 0 HealThing(1)
		TNT1 A 0 A_JumpIfTargetInLOS("Missile",90,JLOSF_CLOSENOJUMP|JLOSF_DEADNOJUMP|JLOSF_TARGETLOS,1000,200)
		TNT1 A 0 A_JumpIfInTargetLOS("Avoid",360,JLOSF_DEADNOJUMP,1000)
		LEEG DDDD 2 A_Chase//("Melee","",CHF_NOPLAYACTIVE)
		TNT1 A 0 A_JumpIfTargetInLOS("Missile",90,JLOSF_CLOSENOJUMP|JLOSF_DEADNOJUMP|JLOSF_TARGETLOS,1000,200)
		TNT1 A 0 A_JumpIfInTargetLOS("Avoid",360,JLOSF_DEADNOJUMP,1000)
		TNT1 A 0 A_SpawnItemEx("DeathKnightStep",0,0,5,0,0,-20)
		TNT1 A 0 A_GiveInventory("Tic",1)
		TNT1 A 0 A_JumpIfInventory("Tic",10,"SeeLoop")
		Loop
  Missile:
		TNT1 AAA 0 A_ChangeFlag("NOPAIN",1)
		TNT1 A 0 A_PlaySound("LGrosse/sight",CHAN_VOICE,1.0,0,ATTN_NONE)
		TNT1 A 0 A_TakeInventory("Tic",999999)
		TNT1 A 0 A_SetUserVar("user_attack",1)
		TNT1 A 0 A_PlaySound("weapons/expmgunspinstart",CHAN_WEAPON,1.0,0)
		LEEG EEEE 5 A_FaceTarget(45)
		TNT1 A 0 A_FaceTarget
  Refire:
		TNT1 A 0 A_PlaySound("weapons/expmgunspin",CHAN_WEAPON,1.0,1)
		TNT1 A 0 A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("OrangeShellCasing", 25, 6, 45, Random(2, 6), 0, Random(1, 3), Random(80, 90), 128)
		TNT1 A 0 A_SpawnItemEx("OrangeShellCasing", -25, 6, 45, Random(2, 6), 0, Random(1, 3), Random(-80, -90), 128)
		LEEG F 0 A_CustomMissile("MonsterExplosiveTracer2",45,25,Random(3,-3))
		LEEG F 0 A_CustomMissile("MonsterExplosiveTracer2",45,-25,Random(3,-3))
		LEEG FF 0 A_CustomBulletAttack(4.3,2.6,1,20,"ExosBulletPuff")
		LEEG F 3 Bright A_PlaySound("weapons/12gaugefire")
		TNT1 A 0 A_SpawnItemEx("OrangeShellCasing", 25, 6, 45, Random(2, 6), 0, Random(1, 3), Random(80, 90), 128)
		TNT1 A 0 A_SpawnItemEx("OrangeShellCasing", -25, 6, 45, Random(2, 6), 0, Random(1, 3), Random(-80, -90), 128)
		LEEG G 0 A_CustomMissile("MonsterExplosiveTracer2",45,25,Random(3,-3))
		LEEG G 0 A_CustomMissile("MonsterExplosiveTracer2",45,-25,Random(3,-3))
		LEEG GG 0 A_CustomBulletAttack(4.3,2.6,1,20,"ExosBulletPuff")
		LEEG G 3 Bright A_PlaySound("weapons/12gaugefire")
		TNT1 A 0 A_MonsterRefire(0,"MissileEnd")
		TNT1 A 0 A_Jump(1,"Pause")
		TNT1 A 0 A_GiveInventory("Tic",1)
		TNT1 A 0 A_JumpIfInventory("Tic",50,"Pause")
		Goto Refire
	MissileEnd:
		TNT1 A 0
		TNT1 A 0 A_ChangeFlag("NOPAIN",0)
		TNT1 A 0 A_SetUserVar("user_attack",0)
		TNT1 A 0 A_PlaySound("weapons/expmgunspinstop",CHAN_WEAPON,1.0,0)
		TNT1 A 0 A_Jump(127,2)
		TNT1 A 0 A_PlaySound("LGrosse/active",CHAN_VOICE,1.0,0,ATTN_NONE)
		LEEG EE 3 A_FaceTarget
		Goto SeeLoop
	Pause:
		TNT1 A 0
		TNT1 A 0 A_ChangeFlag("NOPAIN",0)
		TNT1 A 0 A_SetUserVar("user_attack",0)
		TNT1 A 0 A_PlaySound("weapons/expmgunspinstop",CHAN_WEAPON,1.0,0)
		TNT1 A 0 A_Jump(256,1,2,3,4,5)
		LEEG EEEEEEEEEE 3 A_FaceTarget(45)
		Goto See2
	Avoid:
		TNT1 A 0
		TNT1 A 0 A_Jump(256,"AvoidLeft","AvoidRight","Dash","Jump")
		GoTo AvoidLeft
	AvoidLeft:
		LEEG E 1 A_FaceTarget
		TNT1 A 0 A_PlaySound("DeathKnight/jump",CHAN_BODY,1.0,0)
		TNT1 A 0 ThrustThing(angle*256/360+192,15,0,0)
	    LEEG E 5 A_FaceTarget
		TNT1 A 0 A_CheckSight("SeeLoop2")
		TNT1 A 0 A_JumpIfTargetInLos("Missile",90,JLOSF_DEADNOJUMP|JLOSF_TARGETLOS)
		TNT1 A 0 A_Jump(64,"SeeLoop")
		GoTo Missile
	AvoidRight:
		LEEG E 1 A_FaceTarget
		TNT1 A 0 A_PlaySound("DeathKnight/jump",CHAN_BODY,1.0,0)
		TNT1 A 0 ThrustThing(angle*256/360+64,15,0,0)
		LEEG E 5 A_FaceTarget
		TNT1 A 0 A_CheckSight("SeeLoop2")
		TNT1 A 0 A_JumpIfTargetInLos("Missile",90,JLOSF_DEADNOJUMP|JLOSF_TARGETLOS)
		TNT1 A 0 A_Jump(64,"SeeLoop")
		GoTo Missile
	Dash:
		LEEG E 1 A_FaceTarget
		TNT1 A 0 A_PlaySound("DeathKnight/jump",CHAN_BODY,1.0,0)
		TNT1 A 0 ThrustThingZ(0,20,0,1)
		TNT1 AA 0 A_Recoil(-20)
		LEEG E 5 A_FaceTarget
		TNT1 A 0 A_CheckSight("SeeLoop2")
		TNT1 A 0 A_JumpIfTargetInLos("Missile",90,JLOSF_DEADNOJUMP|JLOSF_TARGETLOS)
		TNT1 A 0 A_Jump(64,"SeeLoop")
		GoTo Missile
	Jump:		
		LEEG E 1 A_FaceTarget
		TNT1 A 0 A_PlaySound("DeathKnight/jump",CHAN_BODY,1.0,0)
		LEEG E 0 ThrustThingZ(0,random(40,60),0,1)
		TNT1 AA 0 A_Recoil(-5)
		LEEG E 5 A_FaceTarget
		TNT1 A 0 A_CheckSight("SeeLand2")
		TNT1 A 0 A_JumpIfTargetInLos("MissileLand",90,JLOSF_DEADNOJUMP|JLOSF_TARGETLOS)
		TNT1 A 0 A_Jump(64,"SeeLand")
		Goto MissileLand
	SeeLand:
		TNT1 A 0 A_SpawnItemEx("DeathKnightStep",0,0,5,0,0,-20)
		TNT1 A 0 A_SpawnItemEx("DeathKnightStep",0,0,5,0,0,-20)
		LEEG A 0 A_PlaySound("Terminator/terstepA")
		LEEG E 5 A_FaceTarget
		GoTo SeeLoop
	SeeLand2:
		TNT1 A 0 A_SpawnItemEx("DeathKnightStep",0,0,5,0,0,-20)
		TNT1 A 0 A_SpawnItemEx("DeathKnightStep",0,0,5,0,0,-20)
		LEEG A 0 A_PlaySound("Terminator/terstepA")
		LEEG E 5 A_FaceTarget
		GoTo SeeLoop2
	MissileLand:
		TNT1 AAA 0 A_ChangeFlag("NOPAIN",1)
		TNT1 A 0 A_TakeInventory("Tic",999999)
		TNT1 A 0 A_SetUserVar("user_attack",1)
		TNT1 A 0 A_PlaySound("weapons/expmgunspinstart",CHAN_WEAPON,1.0,0)
		TNT1 A 0 A_SpawnItemEx("DeathKnightStep",0,0,5,0,0,-20)
		TNT1 A 0 A_SpawnItemEx("DeathKnightStep",0,0,5,0,0,-20)
		LEEG A 0 A_PlaySound("Terminator/terstepA")
		LEEG EEEE 5 A_FaceTarget(45)
		TNT1 A 0 A_FaceTarget
		GoTo Refire
	Pain.Crush:
		TNT1 AAA 0 A_ChangeFlag("NOPAIN",1)
		TNT1 A 0 A_Recoil(-20)
		LEEG H 6 A_Pain
		GoTo SeeLoop
	Pain.Fire:
		TNT1 AAA 0 A_ChangeFlag("NOPAIN",1)
		TNT1 A 0 A_Recoil(-20)
		LEEG H 6 A_Pain
		GoTo SeeLoop
	Pain:
		TNT1 AAA 0 A_ChangeFlag("NOPAIN",1)
		TNT1 A 0 A_JumpIf(user_attack > 0,"WeapodDown")
		LEEG H 6 A_Pain
		Goto Avoid
	WeapodDown:
		TNT1 A 0
		TNT1 A 0 A_SetUserVar("user_attack",0)
		TNT1 A 0 A_PlaySound("weapons/expmgunspinstop",CHAN_WEAPON,1.0,0)
		LEEG E 6 A_Pain
		Goto SeeLoop
	Death:
		TNT1 A 0
		TNT1 AAA 0 A_StopSound(CHAN_WEAPON)
		LEEG I 5 A_ScreamAndUnblock
		LEEG J 5 A_SpawnItemEx("GibbedGenerator",0,0,0,0,0,0,0,128,0)
		LEEG K 5 A_SpawnItem("BodyCrash",0,0,0,0)
		TNT1 A 0 A_BossDeath
		LEEG L -1
		Stop
  }
}