    Actor FlareGunHoodieGuy : GenericHumanScum  
{
Health 30
Monster
Health 50
Radius 20
Height 56
Speed 11
PainChance 200
Translation "112:127=96:111", "80:95=104:111", "4:4=104:111", "144:151=96:111"
Species "IMP"
+DONTHARMSPECIES
seesound "EBydlo/See"
painsound "EBydlo/Pain"
deathsound "EBydlo/Death"
activesound "EBydlo/Active"
Tag "Flaregun Rioter Guy"
scale 1.0
Obituary "%o' got into an incident with pyrotechnics"
//+DROPOFF
  States
	{
 Spawn:
    TNT1 A 0
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("STFUCheck") == 1, "STFU")
	TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult ("VanJumpCheck") == 1, "VanJump")
	TNT1 A 0 A_SetScale (scaleX+frandom(-0.02, 0.02), scaleY+frandom(-0.08,0.08)) 
	TNT1 A 0 A_SpawnItemEx ("HumanTrails", 0, 0, 0)
	TNT1 A 0 A_SpawnItemEx ("BydloWRITER", 0, 0, 0, 0, 0, 0, 0, SXF_NOCHECKPOSITION, 100)
  Spawn2:	
	VSHA T 10 A_Look
	loop
   STFU:
     TNT1 A 0
	 TNT1 A 0 ACS_NamedExecute ("STFUEBydlo")
	 Goto Spawn+2
	VanJump:
	 TNT1 A 0
	 TNT1 A 0  NODELAY ACS_NamedExecuteAlways ("VanillaHeights")
	Goto Spawn+3 
	See:
	 "####" A random(1,4) 
	 TNT1 A 0 A_Jump (70, "DodgeLeft", "DodgeRight", "DodgeLeftF", "DodgeLeftB", "DodgeRightF", "DodgeRightB")
	 TNT1 A 0 A_Jump (180, "MissileCheck")
	SeeLoop:
	 TNT1 A 0 A_Jump (170, "DodgeLeft", "DodgeRight", "DodgeLeftF", "DodgeLeftB", "DodgeRightF", "DodgeRightB")
	 VSHA AABB 4 A_Chase
	 VSHA CCDD 4 A_Chase  
	Loop
   MissileCheck:
	TNT1 A 0
	TNT1 A 0 A_Jump (75, "MollyCheck")	
	TNT1 A 0 A_JumpIfTargetInLos ("Missile", 50)
	Goto SeeLoop
  DodgeLeft:
        TNT1 A 0 A_FaceTarget
	    VSHA AABBCCDD 2 ThrustThing(angle*256/360+192, 1, 0, 0)
		TNT1 A 0 A_Jump (120, "MissileCheck")
		TNT1 A 0 A_Jump (50, "DodgeRight")
		Goto SeeLoop+2
	DodgeLeftF:
	    TNT1 A 0 A_FaceTarget
	    TNT1 A 0 ThrustThingZ (0, 15, 0, 0)
	    TNT1 A 0 A_Recoil (random (-8,-3))
	    VSHA AABBCCDD 2 ThrustThing(angle*256/360+192, 1, 0, 0)
		TNT1 A 0 A_Jump (120, "MissileCheck")
		Goto SeeLoop+2
    DodgeLeftB:
	    TNT1 A 0 A_FaceTarget
	    TNT1 A 0 ThrustThingZ (0, 15, 0, 0)
	    TNT1 A 0 A_Recoil (random (3,8))
	    VSHA AABBCCDD 2 ThrustThing(angle*256/360+192, 1, 0, 0)
		TNT1 A 0 A_Jump (120, "MissileCheck")
		Goto SeeLoop+2
	DodgeRight:
	    TNT1 A 0 A_FaceTarget
	    VSHA AABBCCDD 2 ThrustThing(angle*256/360+64, 1, 0, 0)
		TNT1 A 0 A_Jump (100, "MissileCheck")
		Goto SeeLoop+2
	DodgeRightF:
	    TNT1 A 0 A_FaceTarget
	    TNT1 A 0 ThrustThingZ (0, 15, 0, 0)
	    TNT1 A 0 A_Recoil ( random (-8,-3)) 
	    VSHA AABBCCDD 2 ThrustThing(angle*256/360+64, 1, 0, 0)
		TNT1 A 0 A_Jump (100, "MissileCheck")
		Goto SeeLoop+2
	DodgeRightB:
	    TNT1 A 0 A_FaceTarget
	    TNT1 A 0 ThrustThingZ (0, 15, 0, 0)
	    TNT1 A 0 A_Recoil ( random (3,8)) 
	    VSHA AABBCCDD 2 ThrustThing(angle*256/360+64, 1, 0, 0)
		TNT1 A 0 A_Jump (100, "MissileCheck")
		Goto SeeLoop+2			
 Missile:
	TNT1 A 0
	TNT1 A 0 A_Jump (125, "MissileRed", "MissileOrange", "MissileYellow")
	VSHA EF 4 A_FaceTarget
	TNT1 A 0 A_PlaySound ("FLARFIR")
	VSHA G 8 BRIGHT A_CustomMissile ("FlareShellGreen",45,0,random (-2,2))
	goto SeeLoop
 MissileRed:
	VSHA EF 4 A_FaceTarget
	TNT1 A 0 A_PlaySound ("FLARFIR")
	VSHA G 8 BRIGHT A_CustomMissile ("FlareShellRed",45,0,random (-2,2))
	goto SeeLoop
 MissileOrange:
	VSHA EF 4 A_FaceTarget
	TNT1 A 0 A_PlaySound ("FLARFIR")
	VSHA G 8 BRIGHT A_CustomMissile ("FlareShellOrange",45,0,random (-2,2))
	goto SeeLoop
 MissileYellow:
	VSHA EF 4 A_FaceTarget
	TNT1 A 0 A_PlaySound ("FLARFIR")
	VSHA G 8 BRIGHT A_CustomMissile ("FlareShellYellow",45,0,random (-2,2))
	goto SeeLoop
 MollyCheck:
	TNT1 A 0 A_JumpIfTargetInLos ("Molly", 0, JLOSF_DEADNOJUMP | JLOSF_CLOSENOJUMP, 700, 325)
 Goto MissileCheck+2
 Molly:
	TNT1 A 0
	TNT1 A 0 A_CustomMissile ("Molotow1", 42, 0, random (-6,6), CMF_OFFSETPITCH, random (8, 12))
	VSHA FE 8 Bright 
	TNT1 A 0 A_GiveInventory ("GrenadeCoolDown", 1)
 Goto SeeLoop		 	
 Pain:
	VSHA H 3
	VSHA H 3 A_Pain
	Goto SeeLoop
 Death:
	VSHA H 3
	VSHA I 5 A_Scream
	VSHA J 5 A_NoBlocking
	VSHA K 5
	VSHA L 5 A_Playsound ("FallingBodyLight", CHAN_BODY)
	VSHA M -1
	Stop
  XDeath:
    TNT1 A 0
    TNT1 A 0 A_SpawnItemEx ("VgavnonahCore", 0, 0, 0, 0, 0, 0, 0, SXF_NOCHECKPOSITION)
    VSHA U 5
    VSHA V 5 A_XScream
    PGIB A 5 A_NoBlocking
    PGIB BCD 5
    PGIB E -1
    Stop
   Raise:
    TNT1 A 0 
	TNT1 A 0 A_SpawnItemEx ("NanoResEffect", 0, 0, 15, 0, 0, 0, 0, SXF_NOCHECKPOSITION)
	VSHA MLKJIH 5
    Goto See   	
    }
}	



    Actor FlareShellGreen
	    {
  Radius 6
  Height 8
  Speed 15
  Scale 0.69		
  Damage (3)
  +NOGRAVITY
  Gravity 1.0	 			
  Projectile
  RenderStyle Add
  Alpha 1
  SeeSound ""
  DeathSound "FLARPUFF"
  States
  {
  Spawn:
	TNT1 A 0
    TNT1 AA 0 A_SpawnItemEx("FlareSmoke",0,0,0,frandom(-0.5,0.5), frandom(-0.5,0.5),frandom(0.3,0.5),0,SXF_NOCHECKPOSITION)  			
    GREX A 1 Bright A_SpawnItemEx ("FlareFlashGreen", 0, 0, 0, 0, 0, 0) 
    Loop
  Death:
	TNT1 A 0
	TNT1 A 1 A_spawnItemEx ("FlareShellGreenLaying", 0, 0, 0, random (-5,5), random (-5,5), random (5,6), 0, SXF_NOCHECKPOSITION)  
    Stop
  }
}


	 Actor FlareShellRed
	    {
  Radius 6
  Height 8
  Speed 15
  Scale 0.69		
  Damage (3)
  +NOGRAVITY
  Gravity 1.0	 			
  Projectile
  RenderStyle Add
  Alpha 1
  SeeSound ""
  DeathSound "FLARPUFF"
  States
  {
  Spawn:
	TNT1 A 0
	TNT1 A 0
    TNT1 AA 0 A_SpawnItemEx("FlareSmoke",0,0,0,frandom(-0.5,0.5), frandom(-0.5,0.5),frandom(0.3,0.5),0,SXF_NOCHECKPOSITION)  			
    GREX A 1 Bright A_SpawnItemEx ("FlareFlashRed", 0, 0, 0, 0, 0, 0)  
    Loop
     Death:
	TNT1 A 0
	TNT1 A 1 A_spawnItemEx ("FlareShellRedLaying", 0, 0, 0, random (-5,5), random (-5,5), random (5,6), 0, SXF_NOCHECKPOSITION)  
    Stop
  }
}

  Actor FlareShellYellow
	    {
  Radius 6
  Height 8
  Speed 15
  Scale 0.69		
  Damage (3)
  +NOGRAVITY
  Gravity 1.0	 			
  Projectile
  RenderStyle Add
  Alpha 1
  SeeSound ""
  DeathSound "FLARPUFF"
  States
  {
  Spawn:
	TNT1 A 0
    TNT1 AA 0 A_SpawnItemEx("FlareSmoke",0,0,0,frandom(-0.5,0.5), frandom(-0.5,0.5),frandom(0.3,0.5),0,SXF_NOCHECKPOSITION)  			
    GREX A 1 Bright A_SpawnItemEx ("FlareFlashYellow", 0, 0, 0, 0, 0, 0) 
    Loop
  Death:
	TNT1 A 0
	TNT1 A 1 A_spawnItemEx ("FlareShellYellowLaying", 0, 0, 0, random (-5,5), random (-5,5), random (5,6), 0, SXF_NOCHECKPOSITION)  
    Stop
  }
}


  Actor FlareShellOrange
	    {
  Radius 6
  Height 8
  Speed 15
  Scale 0.69		
  Damage (3)
  +NOGRAVITY
  Gravity 1.0	 			
  Projectile
  RenderStyle Add
  Alpha 1
  SeeSound ""
  DeathSound "FLARPUFF"
  States
  {
  Spawn:
	TNT1 A 0
    TNT1 AA 0 A_SpawnItemEx("FlareSmoke",0,0,0, frandom(-0.5,0.5), frandom(-0.5,0.5),frandom(0.3,0.5),0,SXF_NOCHECKPOSITION)  			
    GREX A 1 Bright A_SpawnItemEx ("FlareFlashOrange", 0, 0, 0, 0, 0, 0) 
    Loop
  Death:
	TNT1 A 0
	TNT1 A 1 A_spawnItemEx ("FlareShellOrangeLaying", 0, 0, 0, random (-5,5), random (-5,5), random (5,6), 0, SXF_NOCHECKPOSITION)  
    Stop
  }
}



	Actor FlareShellGreenLaying : FlareShellGreen
			{
			 -NOGRAVITY
				Speed 0
				States
					{
			         Death:
						DeathLoop:
							TNT1 A 0
							TNT1 A 0 A_JumpIfInventory ("FlareCountDown", 40, "PUFF")
							TNT1 A 0 A_GiveInventory ("FlareCountDown", 1)	
							TNT1 AA 0 A_SpawnItemEx("FlareSmoke",0,0,0,frandom(-0.5,0.5), frandom(-0.5,0.5),frandom(0.3,0.5),0,SXF_NOCHECKPOSITION)  			
							GREX A 1 Bright A_SpawnItemEx ("FlareFlashGreen", 0, 0, 0, 0, 0, 0)
						   Loop
						   Puff:
							  TNT1 A 0 A_SetScale (0.3) 		
							SPKS ABCDEFGHI 1 Bright	
							Stop
							
					}
			}
			
    Actor FlareShellRedLaying : FlareShellRed
			{
			 -NOGRAVITY
				Speed 0
				States
					{
			         Death:
						DeathLoop:
							TNT1 A 0
							TNT1 A 0 A_JumpIfInventory ("FlareCountDown", 40, "PUFF")
							TNT1 A 0 A_GiveInventory ("FlareCountDown", 1)	
							TNT1 AA 0 A_SpawnItemEx("FlareSmoke",0,0,0,frandom(-0.5,0.5), frandom(-0.5,0.5),frandom(0.3,0.5),0,SXF_NOCHECKPOSITION)  			
							GREX A 1 Bright A_SpawnItemEx ("FlareFlashRed", 0, 0, 0, 0, 0, 0)
						   Loop
						   Puff:
							  TNT1 A 0 A_SetScale (0.3) 		
							SPKS ABCDEFGHI 1 Bright	
							Stop
							
					}
			}





   Actor FlareShellYellowLaying : FlareShellYellow
			{
			 -NOGRAVITY
				Speed 0
				States
					{
			         Death:
						DeathLoop:
							TNT1 A 0
							TNT1 A 0 A_JumpIfInventory ("FlareCountDown", 40, "PUFF")
							TNT1 A 0 A_GiveInventory ("FlareCountDown", 1)	
							TNT1 AA 0 A_SpawnItemEx("FlareSmoke",0,0,0,frandom(-0.5,0.5), frandom(-0.5,0.5),frandom(0.3,0.5),0,SXF_NOCHECKPOSITION)  			
							GREX A 1 Bright A_SpawnItemEx ("FlareFlashYellow", 0, 0, 0, 0, 0, 0)
						   Loop
						   Puff:
							  TNT1 A 0 A_SetScale (0.3) 		
							SPKS ABCDEFGHI 1 Bright	
							Stop
							
					}
			}



   Actor FlareShellOrangeLaying : FlareShellOrange
			{
			 -NOGRAVITY
				Speed 0
				States
					{
			         Death:
						DeathLoop:
							TNT1 A 0
							TNT1 A 0 A_JumpIfInventory ("FlareCountDown", 40, "PUFF")
							TNT1 A 0 A_GiveInventory ("FlareCountDown", 1)	
							TNT1 AA 0 A_SpawnItemEx("FlareSmoke",0,0,0,frandom(-0.5,0.5), frandom(-0.5,0.5),frandom(0.3,0.5),0,SXF_NOCHECKPOSITION)  			
							GREX A 1 Bright A_SpawnItemEx ("FlareFlashOrange", 0, 0, 0, 0, 0, 0)
						   Loop
						   Puff:
							  TNT1 A 0 A_SetScale (0.3) 		
							SPKS ABCDEFGHI 1 Bright	
							Stop
							
					}
			}


  

  Actor FlareCountDown : Inventory
		{
		 Inventory.maxamount 40 	
		}	

  Actor FlareFlashOrange
				{
		+NOINTERACTION
		+CLIENTSIDEONLY
		RenderStyle Add
		Scale 0.15
		     States
               { 
				Spawn:
					TNT1 A 0
					//TNT1 A 0 A_SetScale(scalex+random(1.0,1.5),scaley+random(1.0,1.5)) 
					CLB4 E 1 Bright A_FadeOut (0.04)	
				  Stop
				  }
              }

  Actor FlareFlashRed
				{
		+NOINTERACTION
		+CLIENTSIDEONLY
		RenderStyle Add
		Scale 0.15
		     States
               { 
				Spawn:
					TNT1 A 0
					//TNT1 A 0 A_SetScale(scalex+random(1.0,1.5),scaley+random(1.0,1.5)) 
					CLB4 B 1 Bright A_FadeOut (0.04)	
				  Stop
				  }
              }	
 
  Actor FlareFlashYellow
				{
		+NOINTERACTION
		+CLIENTSIDEONLY
		RenderStyle Add
		Scale 0.15
		     States
               { 
				Spawn:
					TNT1 A 0
					//TNT1 A 0 A_SetScale(scalex+random(1.0,1.5),scaley+random(1.0,1.5)) 
					CLB4 F 1 Bright A_FadeOut (0.04)	
				  Stop
				  }
              }


  Actor FlareFlashGreen
				{
		+NOINTERACTION
		+CLIENTSIDEONLY
		RenderStyle Add
		Scale 0.15
		     States
               { 
				Spawn:
					TNT1 A 0
					//TNT1 A 0 A_SetScale(scalex+random(1.0,1.5),scaley+random(1.0,1.5)) 
					CLB4 H 1 Bright A_FadeOut (0.04)	
				  Stop
				  }
              }		
		
		
	ACTOR FlareGunHoodieGuySpawner : RandomSpawner
		{
		 DropItem FlareGunHoodieGuy
		 DropItem FlareGunHoodieGuyBluePants
		 DropItem FlareGunHoodieGuyDarkGreenHoodie
		}
		
		
   Actor FlareGunHoodieGuyBluePants : FlareGunHoodieGuy
			{
			 Translation "112:127=96:111", "80:95=103:111", "144:151=240:247", "4:4=103:111"
			}

  Actor FlareGunHoodieGuyDarkGreenHoodie : FlareGunHoodieGuy
			{
			 Translation "112:127=120:127", "80:95=124:127", "4:4=124:127"
			}
