Actor RocketBandit : GenericHumanScum replaces Fatso 
  {
  
   //----------------------------COMPLEX DOOM COMPATIBILITY DROPS------------------------
  
  DropItem "WeaponUpgradeBox" 8
  
  
   Monster
   Health 235
   Radius 15
   Height 56
   Mass 400
   Species "Mancucu"
+DONTHARMSPECIES
   Speed 10
   BloodType "DASBLUT"
   PainChance 100
   +NODROPOFF
   Translation "112:127=70:79", "192:207=240:247"	
   MaxDropOffHeight 69
   Monster
   +BOSSDEATH
   Scale 1.0
   SeeSound "Band/Alert"
   PainSound "Band/Pain"
   DeathSound "Band/Death"
   ActiveSound "Band/Active"
   Tag "Totally sane bandit with a freaking HEAVY ANTI TANK ROCKET LAUNCHER"	
   Obituary "%o was cheeki-breeked and FUBAR by the Rocket Bandit"
   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, 69)
		 Spawn2:
		      EU1A T 4 A_Look
			Loop
		 STFU:
     TNT1 A 0
	 TNT1 A 0 ACS_NamedExecute ("STFUBand")
	 Goto Spawn+2
	 VanJump:
	 TNT1 A 0
	 TNT1 A 0  NODELAY ACS_NamedExecuteAlways ("VanillaHeights")
	Goto Spawn+3
	      See:
		   "####" A random(1,5)
			TNT1 A 0 A_Jump (70, "DodgeLeft", "DodgeRight", "DodgeLeftF", "DodgeLeftB", "DodgeRightF", "DodgeRightB")
			TNT1 A 0 A_Jump (180, "MissileCheck")	
	      SeeLoop:
			  TNT1 A 0 A_CheckSight ("CheckReload")
		      TNT1 A 0 A_Jump (199, "DodgeLeft", "DodgeRight", "DodgeLeftF", "DodgeLeftB", "DodgeRightF", "DodgeRightB")
		      EU1A AABBCCDD 3 A_Chase
			 Loop
		    CheckReload:
				TNT1 A 0
				TNT1 A 0 A_Jump (150, "CheckReload2")
				Goto SeeLoop+1
			CheckReload2:
				TNT1 A 0
				TNT1 A 0 A_JumpIfInventory ("RocketShotCounter", 1, "Reload")
				Goto SeeLoop+1	
	  DodgeLeft:
        TNT1 A 0 A_FaceTarget
	    EU1A AABBCCDD 2 ThrustThing(angle*256/360+192, 1, 0, 0)
		TNT1 A 0 A_Jump (228, "MissileCheck")
		TNT1 A 0 A_Jump (50, "DodgeRight")
		Goto SeeLoop+1
	DodgeLeftF:
	    TNT1 A 0 A_FaceTarget
	    TNT1 A 0 ThrustThingZ (0, 15, 0, 0)
	    TNT1 A 0 A_Recoil (random (-8,-3))
	    EU1A AABBCCDD 2 ThrustThing(angle*256/360+192, 1, 0, 0)
		TNT1 A 0 A_Jump (228, "MissileCheck")
		Goto SeeLoop+1
    DodgeLeftB:
	    TNT1 A 0 A_FaceTarget
	    TNT1 A 0 ThrustThingZ (0, 15, 0, 0)
	    TNT1 A 0 A_Recoil (random (3,8))
	    EU1A AABBCCDD 2 ThrustThing(angle*256/360+192, 1, 0, 0)
		TNT1 A 0 A_Jump (228, "MissileCheck")
		Goto SeeLoop+1
	DodgeRight:
	    TNT1 A 0 A_FaceTarget
	    EU1A AABBCCDD 2 ThrustThing(angle*256/360+64, 1, 0, 0)
		TNT1 A 0 A_Jump (228, "MissileCheck")
		Goto SeeLoop+1
	DodgeRightF:
	    TNT1 A 0 A_FaceTarget
	    TNT1 A 0 ThrustThingZ (0, 15, 0, 0)
	    TNT1 A 0 A_Recoil ( random (-8,-3)) 
	    EU1A AABBCCDD 2 ThrustThing(angle*256/360+64, 1, 0, 0)
		TNT1 A 0 A_Jump (228, "MissileCheck")
		Goto SeeLoop+1
	DodgeRightB:
	    TNT1 A 0 A_FaceTarget
	    TNT1 A 0 ThrustThingZ (0, 15, 0, 0)
	    TNT1 A 0 A_Recoil ( random (3,8)) 
	    EU1A AABBCCDD 2 ThrustThing(angle*256/360+64, 1, 0, 0)
		TNT1 A 0 A_Jump (228, "MissileCheck")
		Goto SeeLoop+1
  MissileCheck:
    TNT1 A 0 A_JumpIfTargetInLos ("Missile", 30, JLOSF_DEADNOJUMP)
	Goto SeeLoop		 
		  Missile:
			  TNT1 A 0	
			  TNT1 A 0 A_Jump (185, 2)
			  TNT1 A 0 A_PlaySound ("SLAVAL31", CHAN_VOICE) 	
			  EU1A E 35 A_FaceTarget
			  TNT1 A 0 A_Playsound ("RPGFIRE", CHAN_Weapon)
			  TNT1 A 0 A_FaceTarget	
			  EU1A F 4 Bright A_CustomMissile ("HeavyRocket", 42, 9)
			  TNT1 A 0 A_FaceTarget		
			  TNT1 A 0 A_GiveInventory ("RocketShotCounter", 1)
			  TNT1 A 0	
			 Goto MovingToCover
		  MovingToCover:
			  TNT1 A 0
			  TNT1 A 0 A_Changeflag ("FRIGHTENED", true)
		  MovingToCoverLoop:		
			  EU1A ABCD 2 A_Chase ("","")
			  TNT1 A 0 A_CheckSight ("Reload")
			  TNT1 A 0 A_GiveInventory ("MovingCounter", 1)
			  TNT1 A 0 A_JumpIfInventory ("MovingCounter", 20, "Reload")	
			 Loop
		 Reload:
			  EU1A H 55 A_PlaySound ("RPGRRE")
			  EU1A D 29 A_PlaySound ("RPGLIN")
			  TNT1 A 0 A_TakeInventory ("RocketShotCounter", 1)
			  TNT1 A 0 A_TakeInventory ("MovingCounter", 20)
			  TNT1 A 0 A_Changeflag ("FRIGHTENED", false) 
			 Goto SeeLoop+1
		   Pain:
		      EU1A H 6 A_Pain
			  Goto SeeLoop
		   Death:
		      EU1A I 7 A_Noblocking
			  EU1A J 6 A_Scream
			  EU1A KL 5 A_Playsound ("FallingBodyGear", CHAN_BODY)
			  EU1A M -1
			 Stop
		   XDeath:
			TNT1 A 0
			TNT1 A 0 A_SpawnItemEx ("VgavnonahCore", 0, 0, 0, 0, 0, 0, 0, SXF_NOCHECKPOSITION)
			EU1A U 5
			EU1A 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)
			EU1A MLKJI 5
		   Goto See	
		  
		
		}
}


		actor HeavyRocket  
		{
		projectile
		+MISSILE
		+BLOODSPLATTER
		+DONTHARMSPECIES
		Species "Mancucu"
		radius 3
		height 3
		missiletype "CSMiniMissileTrail"
		missileheight 8
		scale 0.85
		Translation "128:151=4:8", "64:79=4:8", "112:127=5:8"
		speed 18
		damage (30)
		Obituary "%o is now a rocket-man!"
		states
			{
			Spawn:
				TNT1 A 0 A_SpawnItemEx("ReichRocketTrail",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
				TNT1 A 0 A_SpawnItemEx("BiggerRocketTrail",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION | SXF_TRANSFERPITCH)
				MIS0 A 1 Bright A_Playsound ("rockfly",7,1.0,true)
			loop
			Death:
				TNT1 A 0
				TNT1 A 0 A_PlaySound ("SHLBOOM",0)
				TNT1 A 0 A_PlaySound ("misc/distanceboom",6,1.0,0,0)
				TNT1 A 0 A_Explode((50),125, 0 ,0,40)
				TNT1 AAAAA 0 A_CustomMissile ("ReichRocketExplosionFlame", 0, 0, random (0, 360), 2, random (0, 360))
				TNT1 AA 0 A_CustomMissile ("CsMiniMissileBoomSmoke", 0, 0, random (0, 360), 2, random (0, 360))
				TNT1 A 0 A_SpawnItemEx("ReichRocketShockwave",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
				TNT1 A 1 Radius_Quake (2,4,0,7,0)
				TNT1 A 0 A_StopSound (7)
				TNT1 A 20
		stop
			}
		}	

		    Actor RocketShotCounter : Inventory
				{
				 Inventory.Maxamount 8
				}

	
			Actor MovingCounter : Inventory
				{
				 Inventory.Maxamount 500	
				}

			