     Actor HeavyAssaultUnit 
       {
	   
  //----------------------------COMPLEX DOOM COMPATIBILITY DROPS------------------------
  
  DropItem "WeaponUpgradeBox" 120
  DropItem "Demon Tech Rifle", 140
  DropItem "BFG10k" 50
	   
  scale 1.0
  obituary "%o was surprised by a lot of high-tech pyrotechnical and laser show tools of Heavy Assault (CUT THIS BEGORE PUTTING IT ON THE LIE NEWS OR YOU WILL BE FIRED) Unit"
  health 850
  radius 15
  height 54
  mass 420
  +BOSSDEATH
  speed 10
  +NODROPOFF
  MaxDropOffHeight 69
  +DONTHARMSPECIES
  BloodType "DASBLUT"
  Species "BloodyHeavy"
  painchance 95
  SeeSound "HeavyAss/See"
  PainSound "HeavyAss/pain"
  DeathSound "HeavyAss/Death"
  ActiveSound "HeavyAss/Active"
  Tag "Heavy Assault Unit"
  MONSTER
  +FLOORCLIP
  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")
   Spawn2:	
    PIZO A 10 A_Look
    loop
  STFU:
     TNT1 A 0
	 TNT1 A 0 ACS_NamedExecute ("STFUHeavyAss")
	 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 (199, "DodgeLeft", "DodgeRight", "DodgeLeftF", "DodgeLeftB", "DodgeRightF", "DodgeRightB")
    PIZO AABBCCDD 3 A_Chase
    loop
  DodgeLeft:
        TNT1 A 0 A_FaceTarget
	    PIZO 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))
	    PIZO 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))
	    PIZO 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
	    PIZO 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)) 
	    PIZO 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)) 
	    PIZO 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", 0, JLOSF_DEADNOJUMP)
	Goto SeeLoop
  Missile:
	TNT1 A 0
	TNT1 A 0 A_TakeInventory ("RedBallCooldown", 1)
    PIZO E 7 A_FaceTarget
	TNT1 A 0 A_JumpIfCloser (350, "TotallyNotGluonGun")
 	TNT1 A 0 A_Jump (135, "RedBall")
	TNT1 A 0 A_JumpIfTargetInLos ("Cobra", 0, JLOSF_CLOSENOJUMP | JLOSF_DEADNOJUMP, 0, 1500)
	PIZO E 10 A_FaceTarget
	TNT1 A 0 A_PlaySound ("DSJAVMIS")
	PIZO F 2 BRIGHT A_CustomMissile ("HeavyAssRocket",32,9, random (-1,1))
	PIZO E 1 A_FaceTarget
	TNT1 A 0 A_PlaySound ("DSJAVMIS")
	PIZO F 2 BRIGHT A_CustomMissile ("HeavyAssRocket",32,9, random (-1,1))
	PIZO E 1 A_FaceTarget
	TNT1 A 0 A_PlaySound ("DSJAVMIS")
	PIZO F 2 BRIGHT A_CustomMissile ("HeavyAssRocket",32,9, random (-1,1))
	Goto SeeLoop
  RedBall:
    PIZO E 9 A_FaceTarget
    TNT1 A 0 A_PlaySound ("PEW")
	PIZO G 2 BRIGHT A_CustomMissile ("HeavyRedBall",32,9)
	TNT1 A 0 A_GiveInventory ("RedBallCooldown", 1)	
	Goto SeeLoop
  Cobra:
    PIZO E 7 A_FaceTarget
	TNT1 A 0 A_Jump (25, "RedBall")
	TNT1 A 0 A_PlaySound ("ACANO")
	PIZO F 2 BRIGHT A_CustomMissile ("MiniCobraTracer",32,9)
	Goto SeeLoop
  TotallyNotGluonGun:
    PIZO G 2 Bright A_FaceTarget
	PIZO G 2 Bright A_PlaySound ("DSESWSTR")
  TotallyNotGluonGunLoop:
    PIZO G 1 BRIGHT A_FaceTarget
	TNT1 A 0 A_PlaySound ("DSESWLOP", CHAN_WEapon, 1, true)
	PIZO G 1 BRIGHT A_CustomMissile ("GluonBall", 32, 9, random (-3,3))
	TNT1 A 0 A_JumpIfTargetInLos ("StopGluon", 0, JLOSF_DEADNOJUMP | JLOSF_CLOSENOJUMP, 0, 350)
	TNT1 A 0 A_MonsterRefire (40, "StopGluon")
   Loop
  StopGluon:
    TNT1 A 0 
    TNT1 A 0 A_StopSound (chan_weapon)
    TNT1 A 0 A_PlaySound ("DSESWSTP")
	Goto MissileCheck
  Pain:
    TNT1 A 0
	TNT1 A 0 A_PlaySound ("DSESWSTP")
    TNT1 A 0 A_StopSound (chan_weapon)
    PIZO H 3
    PIZO H 3 A_Pain
    goto SeeLoop
  Death:
  	//TNT1 A 0 A_Jump(20, "Suren")
	TNT1 A 0
	TNT1 A 0 A_PlaySound ("DSESWSTP")
	PIZO I 1 A_StopSound (chan_weapon)
    PIZO J 5 A_Scream
    PIZO K 5
    PIZO L 5 A_NoBlocking
    PIZO LM 2
    PIZO N -1
    stop
  XDeath:
    TNT1 A 0
	TNT1 A 0 A_SpawnItemEx ("VgavnonahCore", 0, 0, 0, 0, 0, 0, 0, SXF_NOCHECKPOSITION)
    TNT1 A 0 A_StopSound (chan_weapon)
    PIZO O 5 A_XScream
    PIZO Q 5 A_NoBlocking
    PIZO S 5
    PIZO T -1
    Stop
  Raise:
    TNT1 A 0 
	TNT1 A 0 A_SpawnItemEx ("NanoResEffect", 0, 0, 15, 0, 0, 0, 0, SXF_NOCHECKPOSITION)
	PIZO NMLKJI 5
    Goto See	
  Idle:
    PIZO AA 4 A_Wander
    PIZO A 0 A_Look
    PIZO BB 4 A_Wander
    PIZO A 0 A_Look
    PIZO CC 4 A_Wander
    PIZO A 0 A_Look
    PIZO DD 4 A_Wander
    PIZO A 0 A_Look
    loop
  }
	   
	   
	   }
	   
	   
	
  
  
  
   ACTOR HeavyRedBall
   {
  Radius 6
  Height 8
  Speed 25
  FastSpeed 35
  Species "BloodyHeavy"
  +DONTHARMSPECIES
  Damage (30)
  Projectile
  Scale 0.03
  BounceFactor 0.7
  BounceCount 8
  +SKYEXPLODE
  +DOOMBOUNCE
  +RANDOMIZE
  ReactionTime 50
  RenderStyle Add
  Alpha 1
  SeeSound ""
  DeathSound ""
  States
   {
  Spawn:
    TNT1 A 0
    TNT1 A 0 A_PlaySound ("REDLOP", 5, 1, true)
    TNT1 A 0 A_Countdown
	TNT1 A 0 A_SpawnItemEx ("RedTrail2", 0, 0, 0, 0, 0, 0, 0, SXF_NOCHECKPOSITION)
	TNT1 A 0 A_SpawnItemEx ("RedBallTrail", 0, 0, 0, 0, 0, 0, 0, SXF_NOCHECKPOSITION) 
    ERBA A 4 Bright A_SpawnItemEx ("RedTrail", 0, 0, 0, 0, 0, 0, 0, SXF_NOCHECKPOSITION)
    Loop
  Death:
    TNT1 A 0
	TNT1 A 0 A_StopSound (5) 
    TNT1 A 0 A_Explode (10, 128, 0)
    TNT1 A 0 A_SpawnItemEx ("RedPowerExplosion", 0, 0, 0, 0, 0, 0, 0, SXF_NOCHECKPOSITION)
	Stop
    }
 }
 
 
 
  Actor RedBallTrail
	    {
		 Scale 0.3
		 RenderStyle Add
		 Projectile
		 Alpha 0.55
		 +NOINTERACTION
		 Speed 0
		    States
			   {
			    Spawn:
				    PBAL H 1 Bright A_SetScale (0.29)
					PBAL H 1 Bright A_SetScale (0.28)
					PBAL H 1 Bright A_SetScale (0.27)
					PBAL H 1 Bright A_SetScale (0.26)
					PBAL H 1 Bright A_SetScale (0.25)
					PBAL H 1 Bright A_SetScale (0.24)
					PBAL H 15 Bright A_FadeOut (0.2)
				  Stop
				  }
				  
		}		  
 
 
  Actor RedTrail
	    {
		 +NOINTERACTION
		 RenderStyle Add
		 Alpha 0.5
		 Scale 0.2
		 Speed 0
		 States
		     {
			  Spawn:
			     TNT1 A 0
				 TNT1 A 0 A_Weave (4.0,4.0,1.0,1.0)
				 TNT1 A 0 A_CountDown
				 ZPLB AB 1 Bright
				Loop
			  Death:
			     ZPLB AB 1 Bright A_Fadeout (0.08)
				 Stop
				 }
		}
		
   
   Actor RedTrail2
	    {
		 +NOINTERACTION
		 RenderStyle Add
		 Alpha 0.5
		 Scale -0.2
		 Speed 0
		 States
		     {
			  Spawn:
			     TNT1 A 0
				 TNT1 A 0 A_Weave (4.0,4.0,-1.0,-1.0)
				 TNT1 A 0 A_CountDown
				 ZPLB AB 1 Bright
				Loop
			  Death:
			     ZPLB AB 1 Bright A_Fadeout (0.08)
				 Stop
				 }
		}
 
 
  Actor RedPowerExplosion
     {
	  +NOINTERACTION
	  Projectile
	  RenderStyle Add
	  Scale 1.25
	   States
	        {
			 Spawn:
			    TNT1 A 0
			    TNT1 A 0 A_PlaySound("misc/distanceboom",6,1.0,0,0)
				TNT1 A 0 A_PlaySound ("POWBOOM")
			    BPLO ABCDEFG 3 Bright
              Stop
	         }
			 
	}
	
	
			  
	
	
    Actor GluonBall
	    {
	  Projectile
	  Species "BloodyHeavy"
	  +DONTHARMSPECIES
	  RenderStyle Add
	  Scale 0.45
	  Speed 20
	  +PAINLESS
	  Radius 2
	  +DoomBounce
	  Bouncecount 1
	  Height 1
	  +RIPPER
	  ReactionTime 20
	  Damage (2)
	     States
		     {
			  Spawn:
			     TNT1 A 0
				 TNT1 A 0 A_SpawnItemEx ("GluonTrail", 0, 0, 0, 0, 0, 0, 0, SXF_NOCHECKPOSITION)
				 TNT1 A 0 A_SpawnItemEx ("GluonTrailLens", 0, 0, 0, 0, 0, 0, 0, SXF_NOCHECKPOSITION)
				 TNT1 A 0 A_Weave (4.0,4.0,1.0,1.0)
				 TNT1 A 0 A_CountDown
				 ZPLB AB 1 Bright
				Loop
			  Death:
			     GLUX ABCDEFGH 1 Bright
				 Stop
				 }
				 
	  }			 
				 
	
    Actor GluonTrailLens
	    {
		 Scale 0.3
		 RenderStyle Add
		 Projectile
		 +NOINTERACTION
		 Speed 0
		    States
			   {
			    Spawn:
				    PBAL H 1 Bright
					PBAL H 2 Bright A_FadeOut (0.2)
				  Stop
				  }
				  
		}		  
	
	
	Actor GluonTrail : GluonBall
	    {
		 +NOINTERACTION
		 RenderStyle Add
		 Speed 0
		 Alpha 0.5
		 States
		     {
			  Spawn:
			     TNT1 A 0
				 //TNT1 A 0 A_SpawnItemEx ("GluonTrailLens", 0, 0, 0, 0, 0, 0, 0, SXF_NOCHECKPOSITION)
				 TNT1 A 0 A_Weave (4.0,4.0,1.0,1.0)
				 TNT1 A 0 A_CountDown
				 ZPLB AB 1 Bright
				Loop
			  Death:
			     ZPLB AB 1 Bright A_Fadeout (0.08)
				 Stop
				 }
		}
		 
	
	
	
	
	
	
	
	
    actor HeavyAssRocket  
      {
		projectile
		+MISSILE
		Species "BloodyHeavy"
		+BLOODSPLATTER
		+DONTHARMSPECIES
		radius 3
		height 3
		missiletype "HeavyAssRocketTrail"
		missileheight 8
		scale 0.25
		speed 18
		damage (10)
		Obituary "%o is now a rocket-man!"
		states
		{
		Spawn:
		TNT1 A 0 A_Weave (3.0, 3.0, 1.0, 1.0)
		TNT1 A 0 A_SpawnItemEx("LittleRocketTrail",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
		TNT1 A 0 A_SpawnItemEx("HeavyAssRocketTrail",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION) 
		MISL A 1 Bright A_Playsound ("rockfly",7,1.0,true)
		loop
		Death:
		TNT1 A 0
		TNT1 A 0 A_PlaySound("misc/boom",0)
		TNT1 A 0 A_PlaySound("misc/distanceboom",6,1.0,0,0)
		TNT1 A 0 A_Explode((15),90,0,0,40)
		TNT1 AAAAA 0 A_CustomMissile ("HeavyAssRocketExplosionFlame", 0, 0, random (0, 360), 2, random (0, 360))
		TNT1 AAAAAAAAA 0 A_CustomMissile ("HeavyAssRocketBoomSmoke", 0, 0, random (0, 360), 2, random (0, 360))
		TNT1 A 0 A_SpawnItemEx("HeavyAssRocketShockwave",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 HeavyAssRocketTrail
{
radius 0
height 0
+NOINTERACTION 
+CLIENTSIDEONLY
renderstyle add
alpha 0.9
scale 0.22
states
{
Spawn:
PUF2 ABCDEFGHIJKLMNOPQRSTUWXYZ 1 A_FadeOut(0.05)
stop
}
}

actor HeavyAssRocketExplosionFlame
{
renderstyle add
alpha 0.9
scale 0.5
projectile 
radius 1
height 1
speed 3
damage 0
+NOINTERACTION
+CLIENTSIDEONLY
states
{
Spawn:
EXP1 ABCDEFGH 1 Bright
stop
}
}

actor HeavyAssRocketBoomSmoke
{
renderstyle translucent
alpha 0.95
projectile 
radius 1
height 1
scale 0.12
speed 0.3
damage 0
+NOINTERACTION
+CLIENTSIDEONLY
states
{
Spawn:
BSMK AAAAAAAAAAAA 4 A_FadeOut(0.08,1)
stop
}
}



actor HeavyAssRocketShockwave
{
renderstyle add
alpha 0.5
scale 0.15
+NOINTERACTION
+CLIENTSIDEONLY
states
{
Spawn:
BFS7 A 1 bright A_FadeOut(0.05,1)
TNT1 A 0 A_SetScale(scalex+0.05,scaley+0.05)
loop
}
}

	
	
	
	
	
	
	
	
	
	Actor MiniCobraTracer 
     {
Projectile
Damage (8)
+FORCEXYBILLBOARD
+DONTSPLASH
+BLOODSPLATTER 
+NOEXTREMEDEATH
radius 2
height 2
speed 45
renderstyle Add
alpha 0.9
scale .45
 States
     {
	  Spawn:
	    TRAC A 1 Bright
		Loop
	  Death:
        TNT1 A 0
        TNT1 A 0 A_PlaySound("misc/boom",0)
        TNT1 A 0 A_PlaySound("misc/distanceboom",6,1.0,0,0)
        TNT1 A 0 A_Explode((30),110,0,0,40)
        TNT1 AAAAA 0 A_CustomMissile ("CSMiniMissileExplosionFlame", 0, 0, random (0, 360), 2, random (0, 360))
        TNT1 A 0 A_CustomMissile ("CSMiniMissileBoomSmoke", 0, 0, random (0, 360), 2, random (0, 360))
        TNT1 A 0 A_SpawnItemEx("CsMiniMissileShockwave",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
        TNT1 A 1 Radius_Quake (2,4,0,7,0)
        TNT1 A 20
      stop	
	 }
  }
  
   	

	Actor RedBallCooldown : Inventory
		{

		}