actor Colourset4 : RandomSpawner replaces "Shotgunguy"
{
    DropItem "CommonSG", 255, 600
    DropItem "GreenSG", 255, 300
	Dropitem "CyanSG",255, 200
    DropItem "BlueSG", 255,  280
    DropItem "PurpleSG", 255, 60
	DropItem "GraySG",255, 60
	DropItem "AbyssSG",255, 50
	DropItem "YellowSG", 255, 60
	
		DropItem "BrownSG", 255, 60

	DropItem "FireBluSG",255, 43
	DropItem "RedSG", 255, 33
	DropItem "BlackSG", 255, 5
	DropItem "WhiteSG", 255,  1	

}
 
 
 Actor BrownSG
{
states
{
Spawn:
TNT1 A 0
Goto Scripted
Scripted:
TNT1 A 0
TNT1 A 0 A_JumpIf(CallACS("CH_Brown") == 1, "First") 
TNT1 A 0 A_JumpIf(CallACS("CH_Brown") == 3, "fifty") 
TNT1 A 0
Goto Third

fifty:
TNT1 A 0
TNT1 A 0 a_jump(128,"third")
TNT1 A 0

First:
TNT1 A 0 A_SpawnitemEx("Colourset4",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
stop
Third:
TNT1 A 0 A_SpawnitemEx("BrownSG2",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)



stop
}
}
 
 
 
 
ACTOR BrownSG2 : Shotgunguy
{
  Game Doom
  Health 175
  Radius 20
  Height 56
  Species "SGuy2"
  DamageFactor "Exorcist", 3.0
  DamageFactor "DIMp", 0
  PainChance "DIMp", 0
  Mass 110
  Speed 9
  PainChance 102
  Monster
  +FLOORCLIP
  +Dontharmspecies
   +NOFEAR
 
 	SEESOUND "SSGUNER/sight"
	ATTACKSOUND "SSGUNER/SSG"
  PainSound "Form2/Hurt"
  DeathSound "Sguy2/Die"
  ActiveSound "shotguy/active"
  Obituary "%o got mudshotted by brown shotgunner"
  DropItem "Shotgun"
  Dropitem "CH_Shell"
   Dropitem "CH_Shell"
    Dropitem "CH_Shell"
  DropItem "HealthBundle"

  DropItem "ArmorBonus", 128
  Translation  "0:113=%[0.09,0.09,0.08]:[0.68,0.43,0.28]"
  tag "Muddy guy"
 States
  {
  Spawn:
    QSZM AB 10 A_Look
	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH13",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    Loop
  See:
    QSZM AABB 3 a_chase
		TNT1 A 0 A_SpawnitemEx("ColorTierIconCH13",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	TNT1 A 0 A_SpawnItemEx("Drt1", 0, 0, 0, 5, 0, 3, Random(0, 360),0, 32)

	QSZM CCDD 3 A_Chase
		TNT1 A 0 A_SpawnitemEx("ColorTierIconCH13",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	TNT1 A 0 A_SpawnItemEx("Drt2", 0, 0, 0, 5, 0, 3, Random(0, 360),0, 32)
	
			
    Loop
  Missile:
	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH13",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    QSZM E 2 A_Jumpifcloser(400,"Fire1")
			TNT1 A 0 A_JumpIfInTargetLOS("Fire1", 0, JLOSF_DEADNOJUMP|JLOSF_CLOSENOSIGHT,1200,700)
	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH13",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	QSZM E 2 A_Jump(255,"Getcloser")
	Goto See
  GetCloser:
    QSZM A 0 A_Playsound("gas/gas1")
    QSZM A 3 A_Skullattack(28)
		TNT1 A 0 A_SpawnitemEx("ColorTierIconCH13",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	TNT1 A 0 A_SpawnItemEx("Drt3", 0, 0, 0, 5, 0, 3, Random(0, 360),0, 32)
	QSZM B 6 A_SpawnItemEx("Drt2", 0, 0, 0, 5, 0, 3, Random(0, 360),0, 32)
		TNT1 A 0 A_SpawnItemEx("Drt3", 0, 0, 0, 5, 0, 3, Random(0, 360),0, 32)
	QSZM AB 6 A_SpawnItemEx("Drt1", 0, 0, 0, 5, 0, 3, Random(0, 360),0, 32)
		TNT1 A 0 A_SpawnitemEx("ColorTierIconCH13",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	QSZM E 2 a_stop
				TNT1 A 0 A_JumpIfInTargetLOS("Fire1", 0, JLOSF_DEADNOJUMP|JLOSF_CLOSENOSIGHT,1200,700)

	QSZM A 2 //a_setspeed(9)
	Goto See
  Fire1:
    QSZM E 10 A_FaceTarget
		TNT1 A 0 A_SpawnitemEx("ColorTierIconCH13",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    QSZM F 4 Bright a_playsound("SSGUNER/SSG")
		TNT1 A 0 A_SpawnitemEx("ColorTierIconCH13",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	QSZM FFFFFFFFFF 0 Bright a_custommissile("BrownSGshot",32,random(-5,5),random(-15,15),CMF_OFFSETPITCH,random(-9,1))
    QSZM FFFFFFFFFF 0 Bright a_custommissile("BrownSGshot",32,random(-5,5),random(-15,15),CMF_OFFSETPITCH,random(-1,9))

	QSZM F 4 Bright 
	QSZM E 2 A_FaceTarget
	Goto see
	
								Pain.AbyssPE:
		TNT1 A 0
		TNT1 A 0 A_changeflag("Nopain",true)
	TNT1 A 0 A_setscale(0.8,0.8)
	AYPB AAB 5 bright
	AYPB B 5 bright a_playsound("AbyssForm",0)
	AYPB BBA 5 bright
	AYPB CDE 5 bright
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnitemEx("SplashAbyss",random(-16,16),random(-16,16),random(4,32),16,0,3,random(-359,359),SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnitemEx("SplashAbyss",random(-16,16),random(-16,16),random(4,32),12,0,8,random(-359,359),SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)

	TNT1 A 0 A_SpawnitemEx("AbyssSG2",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
	AYPB FGH 3 bright
	AYPB I 5 bright a_setscale(1,0.75)
	AYPB H 5 bright a_setscale(1,0.5)
	AYPB I 5 bright a_setscale(1,0.25)
	AYPB H 5 bright a_setscale(1,0.05)
	TNT1 A 0 A_die
	Stop
	
	
  Pain:
    QSZM G 3
	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH13",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    QSZM G 3 A_Pain
    Goto See
Tickles:
TNT1 A 0 A_Spawnitemex("ThePlanBoner",0,0,6,0,0,0,0,SXF_NOCHECKPOSITION)
Goto Death+1
Death:
TNT1 A 0 A_JumpIfInventory("CHBoner", 1, "Tickles")
    QSZM H 5
    QSZM I 5 A_Scream
    QSZM J 5 A_NoBlocking
    QSZM K 5
    QSZM L -1
    Stop
  XDeath:
    TNT1 AAA 0 A_SpawnItemEx ("CHRandom_GibGenerator", 0,0,32, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_USEBLOODCOLOR | SXF_NOCHECKPOSITION)
     QSZM M 0
     QSZM N 5 A_XScream
     QSZM O 5 A_NoBlocking
    TNT1 AAA 0 A_SpawnItemEx ("CHRandom_GibGenerator", 0,0,12, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_USEBLOODCOLOR | SXF_NOCHECKPOSITION)
     QSZM PQRST 5
     QSZM U -1
    Stop
  Raise:
    QSZM L 5
    QSZM KJIH 5
    Goto See
  }
}
 
 
ACTOR BrownSGshot
{
  Game Doom
  Radius 2
  Height 2
  Speed 64
  Damage (random(1,5))
  Projectile
  +dontblast
  RenderStyle Add
  Alpha 0.85
  Scale 1
  DeathSound "imp/shotx"
  States
  {
  Spawn:
      TNT1 A 5 Bright
    goto death
  Death:
    TNT1 A 0
	TNT1 A 0 A_stop
    PUFF C  6 bright
	TNT1 A 0 A_blast(BF_NOIMPACTDAMAGE,128,32,20.0)
	PUFF DE 6 Bright
    Stop
  }
}


Actor CyanSG
{
states
{
Spawn:
TNT1 A 0
Goto Scripted
Scripted:
TNT1 A 0
TNT1 A 0 A_JumpIf(CallACS("CH_Cyan") == 1, "First") 
TNT1 A 0 A_JumpIf(CallACS("CH_Cyan") == 3, "fifty") 
TNT1 A 0
Goto Third

fifty:
TNT1 A 0
TNT1 A 0 a_jump(128,"third")
TNT1 A 0

First:
TNT1 A 0 A_SpawnitemEx("Colourset4",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
stop
Third:
TNT1 A 0 A_SpawnitemEx("cyanSG2",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)



stop
}
}
 
 
 
 
 
 Actor CyanSG2
{
  Health 60
  Height 56
  Radius 20
  Speed 8
  PainChance 128
  Mass 4200
  DamageFactor Fire, 1.5
    DamageFactor "Fire", 1.5
  DamageFactor melee, 2.0
  DamageFactor ice, 0.10
    DamageFactor "Exorcist", 3.0
  DamageFactor "DIMp", 0
  PainChance "DIMp", 0
Bloodcolor "Black"
  Monster
  +FloorClip
+noicedeath
  +Missilemore
  +NOFEAR
      DamageFactor "Falling", 0.0
  DamageFactor Falling, 0.0
  SeeSound "ZSpecOps/Sight"
  ActiveSound "ZSpecOps/Sight"
  PainSound "ZSpecOps/Pain"
  DeathSound "ZSpecOps/Death"
  Obituary "%o was frost bitten by cyan shotgunner"
  DropItem "Shotgun"
  DropItem "ArmorBundle",12
  DropItem "HealthBundle",178
 Translation "0:255=%[0.30,0.57,1.22]:[1.01,2.00,2.00]", "88:90=%[0.00,0.00,1.76]:[0.43,1.22,2.00]", "61:61=%[0.00,0.00,1.59]:[0.52,0.52,2.00]", "57:57=%[0.09,0.02,1.35]:[0.03,0.38,1.74]"


  tag "Cyan Shotgun dood"
  States
  {
  Spawn:
    CNSG AAAAAAAAAABBBBBBBBBB 1 A_look
						 	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH12",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    Loop

 
  See:
   TNT1 A 0 a_jump(232,"SeeMe")
    CNSG AAAAAAAA 1 a_chase
							 	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH12",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	CNSG BBBBBBBB 1 A_chase
							 	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH12",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

   		TNT1 A 0 a_jump(232,"SeeMe","See2")
		
        Loop
		
		See2:
		CNSG AAAABBBB 1 A_Fastchase
								 	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH12",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

		Goto see
		SeeMe:
		 CNSG A 0
		 						 	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH12",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

		 CNSG A 0 A_JumpIfInTargetLOS("Jumpy", 0, JLOSF_CLOSENOJUMP|JLOSF_DEADNOJUMP, 750, 300)
		Goto see
	
		Jumpy:
		TNT1 A 0 
		CNSG A 2 A_fastchase
		TNT1 A 0 A_JumpIf(CallACS("CH_CyanBounce") == 1, "See2")
								 	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH12",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

		CNSG A 1 thrustthingz(0,48,0,0)
		CNSG A 1 thrustthing(angle-random(130,230),12,0,0)
		CNSG AA 1
		CNSG A  1 thrustthingz(0,28,0,0)
		CNSG A  1 thrustthing(angle,24,0,0)
		Goto see
	
	
	
	
	Missile:
							 	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH12",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	    CNSG EEE 4 A_FaceTarget
    CNSG F 0 Bright A_PlayWeaponSound("Weapons/ShotGF")
	TNT1 A 0 A_jump(128,"Proj")
    CNSG F 0 Bright A_CustomBulletAttack(4,4,1,random(1,5), "CyanSGPuff",8000,CBAF_EXPLICITANGLE)
	CNSG F 0 Bright A_CustomBulletAttack(-4,-4,1,random(1,4), "CyanSGPuff",8000,CBAF_EXPLICITANGLE)
	CNSG F 0 Bright A_CustomBulletAttack(5,5,2,random(1,2), "CyanSGPuff")
	CNSG F 0 Bright A_CustomBulletAttack(4,-4,1,random(1,4), "CyanSGPuff",8000,CBAF_EXPLICITANGLE)
	CNSG F 0 Bright A_CustomBulletAttack(-4,4,1,random(1,5), "CyanSGPuff",8000,CBAF_EXPLICITANGLE)
	CNSG F 2 Bright 
    CNSG EE 2 A_FaceTarget
	CNSG E 2 A_CheckSight("See")
	CNSG E 0 A_jump(102,"Missile")
    Goto See

   Proj:
   TNT1 A 0
    CNSG FFFFF 0  A_Custommissile("IceZombieShot2",32,0,random(-5,5),0,random(-2,2))
    CNSG F 0 Bright A_CustomBulletAttack(-2,2,1,random(1,6), "CyanSGPuff",8000,CBAF_EXPLICITANGLE)
	CNSG F 2 Bright 
    CNSG EE 2 A_FaceTarget
	CNSG E 2 A_CheckSight("See")
	CNSG E 0 A_jump(102,"Missile")
    Goto See
	
	
								Pain.AbyssPE:
		TNT1 A 0
		TNT1 A 0 A_changeflag("Nopain",true)
	TNT1 A 0 A_setscale(0.8,0.8)
	AYPB AAB 5 bright
	AYPB B 5 bright a_playsound("AbyssForm",0)
	AYPB BBA 5 bright
	AYPB CDE 5 bright
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnitemEx("SplashAbyss",random(-16,16),random(-16,16),random(4,32),16,0,3,random(-359,359),SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnitemEx("SplashAbyss",random(-16,16),random(-16,16),random(4,32),12,0,8,random(-359,359),SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)

	TNT1 A 0 A_SpawnitemEx("AbyssSG2",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
	AYPB FGH 3 bright
	AYPB I 5 bright a_setscale(1,0.75)
	AYPB H 5 bright a_setscale(1,0.5)
	AYPB I 5 bright a_setscale(1,0.25)
	AYPB H 5 bright a_setscale(1,0.05)
	TNT1 A 0 A_die
	Stop
	
	
Jump:
CNSG G 2
	  CNSG  E 1 thrustthingz(0,12,0,0)
	  CNSG E 1 thrustthing(angle + random(90,270),32,0,0)
	  CNSG A 4
 Goto see
  Pain:
    CNSG G 4
							 	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH12",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    CNSG G 4 A_Pain
    CNSG G 0 A_Jump(96, "Jump")
    Goto See
Tickles:
TNT1 A 0 A_Spawnitemex("ThePlanBoner",0,0,6,0,0,0,0,SXF_NOCHECKPOSITION)
Goto Death+1
Death:
TNT1 A 0 A_JumpIfInventory("CHBoner", 1, "Tickles")
    CNSG H 5
    CNSG I 5 A_Scream
    CNSG J 5
    CNSG K 5 A_NoBlocking
	TNT1 A 0 A_SpawnItemEx ("CH_Cirno", 0,0,24, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM| SXF_NOCHECKPOSITION,254)
	TNT1 A 0 A_iceguydie
    CNSG L -1
 
  }
}

 
 
Actor GraySG
{
states
{
Spawn:
TNT1 A 0
Goto Scripted
Scripted:
TNT1 A 0 A_JumpIf(CallACS("CH_Grayscale") == 1, "First") 
TNT1 A 0
Goto Third
First:
TNT1 A 0 A_SpawnitemEx("PurpleSG",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
stop
Third:
TNT1 A 0 A_SpawnitemEx("GraySG2",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
stop
}
}

ACTOR GraySG2 : Shotgunguy
{
  Game Doom
  Health 175
  Radius 20
  Height 56
  DamageFactor "Exorcist", 3.0
  DamageFactor "DIMp", 0
  PainChance "DIMp", 0
  Mass 110
  Speed 4
  PainChance 150
  Monster
  +FLOORCLIP
  +avoidmelee
  +missilemore
   +NOFEAR
  SeeSound "SGUY2/See"
   AttackSound "SNPRFIRE"
  PainSound "Form2/Hurt"
  DeathSound "Sguy2/Die"
  ActiveSound "shotguy/active"
  Obituary "one shot, %o kill"
  DropItem "Shotgun"
  Dropitem "CH_Shell"
  DropItem "CH_ClipBox"
  Dropitem "CH_Shell"
  DropItem "HealthBonus"
  DropItem "HealthBonus", 128
  DropItem "HealthBonus", 128
  DropItem "ArmorBonus", 128
  Translation "80:111=%[0.07,0.09,0.10]:[0.69,0.69,0.69]", "4:4=88:88", "16:47=%[0.58,0.58,0.58]:[0.28,0.28,0.28]", "5:8=186:191"
  tag "snipah"
  var int user_ready;
 States
  {
  Spawn:
    GRSH  AB 10 A_Look
							 	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH8",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    Loop
  See:
    GRSH  AABB 3 a_chase
								 	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH8",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	GRSH  CCDD 3 A_Chase
								 	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH8",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    Loop
  Missile:
  							 	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH8",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    GRSH  E 2 A_Jumpifcloser(800,"Fire1")
	GRSH  E 2 A_Jump(255,"GetReady")
	Goto See
  Fire1:
    GRSH  E 8 a_facetarget
	GRSH  E 8 bright  A_Custombulletattack(random(-1,1),0,random(1,2),random(1,9))
	
	Goto See
  GetReady:
  TNT1 A 0
  TNT1 A 0 A_jumpif(User_Ready>=1,"Fire2")
  GRSH  E 8 a_facetarget
  GRSH  E 3 a_setscale(1.0,0.7)
  GRSH  E 3 a_setscale(1.25,0.5)
  GRSH  E 3 a_setscale(1.5,0.3)
  GRSH  E 1 //A_setspeed(2)
  GRSH  E 1 A_changeflag("NOPAIN",TRUE)
  GRSH  E 3 A_setuservar("User_ready",user_ready+1)
  Goto see
  
  
  Fire2:
    GRSH  E 6 A_FaceTarget
	GRSH  E 6 A_CustomRailGun(0,0,"none","red",RGF_FULLBRIGHT|RGF_SILENT,0,0,"RedDotSGPuff",0,0,0,15,0.5,0.5,"",-12)
	    GRSH  E 5 A_FaceTarget
	GRSH  E 5  A_CustomRailGun(0,0,"none","red",RGF_FULLBRIGHT|RGF_SILENT,0,0,"RedDotSGPuff",0,0,0,15,0.5,0.5,"",-12)
	    GRSH  E 4 A_FaceTarget
	GRSH  E 4  A_CustomRailGun(0,0,"none","red",RGF_FULLBRIGHT|RGF_SILENT,0,0,"RedDotSGPuff",0,0,0,15,0.5,0.5,"",-12)
	    GRSH  E 3 A_FaceTarget
	GRSH  E 3  A_CustomRailGun(0,0,"none","red",RGF_FULLBRIGHT|RGF_SILENT,0,0,"RedDotSGPuff",0,0,0,15,0.5,0.5,"",-12)
	
    GRSH  F 6 Bright A_Custombulletattack(0,0,1,random(5,20))
	GRSH  E 2 A_FaceTarget
	GRSH  E 24
    GRSH  E 2 A_Monsterrefire(180,"See")
    Goto Fire2
	
							Pain.AbyssPE:
		TNT1 A 0
		TNT1 A 0 A_changeflag("Nopain",true)
	TNT1 A 0 A_setscale(0.8,0.8)
	AYPB AAB 5 bright
	AYPB B 5 bright a_playsound("AbyssForm",0)
	AYPB BBA 5 bright
	AYPB CDE 5 bright
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnitemEx("SplashAbyss",random(-16,16),random(-16,16),random(4,32),16,0,3,random(-359,359),SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnitemEx("SplashAbyss",random(-16,16),random(-16,16),random(4,32),12,0,8,random(-359,359),SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)

	TNT1 A 0 A_SpawnitemEx("AbyssSG2",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
	AYPB FGH 3 bright
	AYPB I 5 bright a_setscale(1,0.75)
	AYPB H 5 bright a_setscale(1,0.5)
	AYPB I 5 bright a_setscale(1,0.25)
	AYPB H 5 bright a_setscale(1,0.05)
	TNT1 A 0 A_die
	Stop
	
	
  Pain:
      TNT1 A 0
	 							 	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH8",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    GRSH  G 3
    GRSH  G 3 A_Pain
    Goto See
Tickles:
TNT1 A 0 A_Spawnitemex("ThePlanBoner",0,0,6,0,0,0,0,SXF_NOCHECKPOSITION)
Goto Death+4
Death:
TNT1 A 0 
TNT1 A 0 A_setscale(1.0,1.0)
TNT1 A 0 A_JumpIfInventory("CHBoner", 1, "Tickles")
    GRSH  H 5
    GRSH  I 5 A_Scream
    GRSH  J 5 A_NoBlocking
    GRSH  K 5
    GRSH  L -1
    Stop
  XDeath:
  TNT1 A 0 
TNT1 A 0 A_setscale(1.0,1.0)
    TNT1 AAA 0 A_SpawnItemEx ("CHRandom_GibGenerator", 0,0,32, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_USEBLOODCOLOR | SXF_NOCHECKPOSITION)
    SGUP M 0
    SGUP N 5 A_XScream
    SGUP O 5 A_NoBlocking
    TNT1 AAA 0 A_SpawnItemEx ("CHRandom_GibGenerator", 0,0,12, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_USEBLOODCOLOR | SXF_NOCHECKPOSITION)
    SGUP PQRST 5
    SGUP U -1
    Stop
  Raise:
    GRSH  L 5
    GRSH  KJIH 5
    Goto See
  }
}


ACTOR RedDotSGPuff : bulletpuff
{


  +noblood
  +painless
  +alwayspuff
  Translation "0:255=175:191"
  Scale 0.5
  States
  {
  Spawn:
  TNT1 A 0
  Melee:
  Death:
	PUFF A 6
    Stop
  }
}



ACTOR CyanSGPuff : bulletpuff
{


  DeathSound "Ice/Hit2"
  States
  {
  Spawn:
  TNT1 A 1
  Melee:
  Death:
	TNT1 A 0
	TNT1 A 0 A_scream
    
    Stop
  }
}




Actor AbyssSG
{
states
{
Spawn:
TNT1 A 0
Goto Scripted
Scripted:
TNT1 A 0 A_JumpIf(CallACS("CH_Abyssmal") == 1, "First") 
TNT1 A 0 A_JumpIf(CallACS("CH_Abyssmal") == 3, "fifty") 
TNT1 A 0
Goto Third
Fifty:

TNT1 A 0
TNT1 A 0 A_jump(128,"Third")
TNT1 A 0
Goto First
First:
TNT1 A 0 A_SpawnitemEx("PurpleSG",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
stop
Third:
TNT1 A 0 A_SpawnitemEx("AbyssSG2",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
stop
}
}

ACTOR AbyssSG2
{
    Health 333
	Bloodcolor "Black"
    Radius 20
    Height 56
    Speed 13
	scale 0.95
    PainChance 168
	DamageFactor "Exorcist", 3.0
	DamageFactor "DIMp", 0
	PainChance "DIMp", 0
    MONSTER
    +FLOORCLIP
	+Missilemore
	+NOFEAR
    SeeSound "SGUY2/See"
    AttackSound "asgguy/asgfir"
    PainSound "Form2/Hurt"
    DeathSound "Sguy2/Die"
    ActiveSound "grunt/active"
    Obituary "%o was molded to a blue cheese by cheff abyss shotgunner"
	DropItem "CH_Shell"
	DropItem "CH_Shell",64
    DropItem "CH_ShellBox",128
	DropItem "HealthBonus"
	DropItem "HealthBonus"
	DropItem "CH_GreenArmor", 72
	DropItem "HealthBundle"
	DropItem "Shotgun"
	DropItem "Shotgun",128
	  Translation "0:255=%[0.02,0.02,0.03]:[0.29,0.49,0.65]"

    tag "Shotgun of the abyss"
	States
    {
    Spawn:
        ABSG AB 10 A_Look
									 	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH9",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

        Loop
    See:
        ABSG AABB 3 A_Chase
											 	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH9",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

		TNT1 AAA 0 A_Spawnitemex("SplashAbyss",random(-8,8),random(-8,8),random(5,32))
		ABSG CCDD 3 A_Chase
											 	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH9",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

		TNT1 AAA 0 A_Spawnitemex("SplashAbyss",random(-8,8),random(-8,8),random(5,32))
        Loop
    Missile:
    	ABSG E 1
											 	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH9",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

		ABSG E 1 A_JumpIfCloser(800,"Jumper")
		
		ABSG E 5 A_FaceTarget
    	ABSG FFF 2  Bright A_Custommissile("AbyssZshotCH2",36,3,random(-2,2))
		Goto see
		Jumper:
    	ABSG E 5 A_FaceTarget
    	ABSG F 5 Bright A_CustomBulletAttack (6, 7, random(2,4), 1, "SplashAbyss2", 0)
			 TNT1 AAAAAAAA 0 A_Custommissile("SplashAbyss2",56,3,random(-15,15),CMF_OFFSETPITCH,random(-25,-5))

		ABSG F 1 A_checksight("See")
			  TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Spawnitemex("SplashAbyss2",random(-128,328),random(-178,178),random(6,16),0,0,2,0,SXF_NOCHECKPOSITION)
ABSG E 0 A_FaceTarget
	   ABSG E 1 thrustthingz(0,12,0,0)
	   ABSG E 1 thrustthing(angle+180,32,0,0)
		    	ABSG E 5 A_FaceTarget
    	ABSG F 5 Bright A_CustomBulletAttack (6, 7, random(2,4), 2, "SplashAbyss2", 0)
			 TNT1 AAAAAAAA 0 A_Custommissile("SplashAbyss2",56,3,random(-15,15),CMF_OFFSETPITCH,random(-25,-5))

		ABSG F 1 A_checksight("See")
			  TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Spawnitemex("SplashAbyss2",random(-128,328),random(-178,178),random(6,16),0,0,2,0,SXF_NOCHECKPOSITION)
	 ABSG E 0 A_FaceTarget
	 ABSG E 1 thrustthingz(0,12,0,0)
	   ABSG E 1 thrustthing(angle-180,32,0,0)
    	ABSG E 5 A_FaceTarget
    	ABSG F 5 Bright A_CustomBulletAttack (6, 7, random(2,4), 2, "SplashAbyss2", 0)
			 TNT1 AAAAAAAA 0 A_Custommissile("SplashAbyss2",56,3,random(-15,15),CMF_OFFSETPITCH,random(-25,-5))

		Goto see
    Pain:
        ABSG G 3
											 	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH9",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

        ABSG G 3 A_Pain
		ABSG G 3 
        Goto PEP
		PEP:
		TNT1 A 0
		TNT1 A 0 A_changeflag("NOPAIN",TRUE)
		TNT1 A 0 //A_setspeed(21)
		Goto see
		
Tickles:
TNT1 A 0 A_Spawnitemex("ThePlanBoner",0,0,6,0,0,0,0,SXF_NOCHECKPOSITION)
Goto Death+1
Death:
TNT1 A 0 A_JumpIfInventory("CHBoner", 1, "Tickles")
        ABSG H 5
        ABSG I 5 A_Scream
        ABSG J 5 A_Fall
        ABSG KLM 5
        ABSG N -1
        Stop
    XDeath:
	    		TNT1 AAA 0 A_SpawnItemEx ("CHRandom_GibGenerator", 0,0,32, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_USEBLOODCOLOR | SXF_NOCHECKPOSITION)
        ABSG O 5
        ABSG P 5 A_XScream
        ABSG Q 5 A_Fall
				TNT1 AAA 0 A_SpawnItemEx ("CHRandom_GibGenerator", 0,0,12, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_USEBLOODCOLOR | SXF_NOCHECKPOSITION)
        ABSG RSTUV 5
        ABSG W -1
        Stop
    Raise:
        ABSG NMLKJIH 5
        Goto See
    }
}



Actor FireBLUSG
{
states
{
Spawn:
TNT1 A 0
Goto Scripted
Scripted:
TNT1 A 0 A_JumpIf(CallACS("CH_FireBLUES") == 1, "First") 
TNT1 A 0
Goto Third
First:
TNT1 A 0 A_SpawnitemEx("PurpleSG",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
stop
Third:
TNT1 A 0 A_SpawnitemEx("FireBluSG2",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
stop
}
}

ACTOR FireBluSG2
{
	Health 250
	Radius 20
	Height 56
	Scale 0.9
	Speed 12
	Mass 5000
	PainChance 110
	DamageFactor "Exorcist", 3.0
	DamageFactor "DIMp", 0
	PainChance "DIMp", 0
	MONSTER 
	+FloorClip
	+Missilemore
	+NOFEAR
	+dontharmclass
	SEESOUND "SSGUNER/sight"
	ATTACKSOUND "SSGUNER/SSG"
	PAINSOUND "grunt/pain"
	DEATHSOUND "SSGUNER/death"
	ACTIVESOUND "SSGUNER/idle"
	OBITUARY "%o got flamed by fireblu shotgunner"
	DropItem "CH_SuperShotgun", 72
	DropItem "CH_Shell", 128
	DropItem "CH_Shell"
    DropItem "CH_ShellBox",128
	DropItem "HealthBonus"
	DropItem "HealthBonus"
	DropItem "ArmorBundle", 64
	DropItem "CH_GreenArmor", 34
	DropItem "HealthBundle", 128
	Decal Bulletchip
	Translation "117:127=198:207", "152:159=180:191", "9:12=187:191", "104:111=183:191", "96:105=195:203", "3:3=198:198", "144:151=200:205", "128:143=175:186", "64:79=32:47", "48:63=198:207", "208:223=179:191", "13:15=181:184", "9:12=205:207", "0:3=243:246", "236:239=44:47"
    Tag "Gun guy with skin condition"
	states
	{
	Spawn:
		GPOS A 10 A_Look
											 	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH7",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

		Loop
	See:
		GPOS AABB 4 a_chase
													 	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH7",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

		GPOS CCDD 4 A_Chase
													 	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH7",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

		Loop
	Missile:
												 	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH7",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

		GPOS E 10 BRIGHT A_FaceTarget
		GPOS F 0 Bright A_Custommissile("FireSGguy",34,-2,0)
		GPOS F 0 bright A_Custommissile("FireSGguy",34, 6,8)
		GPOS F 0 bright A_Custommissile("FireSGguy",34, 9,13)
		GPOS F 0 bright A_Custommissile("FireSGguy",34, -13,-13)
		GPOS F 8 BRIGHT A_Custommissile("FireSGguy",34,-10,-8)
		GPOS E 8 BRIGHT
		Goto See
		
									Pain.AbyssPE:
		TNT1 A 0
		TNT1 A 0 A_changeflag("Nopain",true)
	TNT1 A 0 A_setscale(0.8,0.8)
	AYPB AAB 5 bright
	AYPB B 5 bright a_playsound("AbyssForm",0)
	AYPB BBA 5 bright
	AYPB CDE 5 bright
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnitemEx("SplashAbyss",random(-16,16),random(-16,16),random(4,32),16,0,3,random(-359,359),SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnitemEx("SplashAbyss",random(-16,16),random(-16,16),random(4,32),12,0,8,random(-359,359),SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)

	TNT1 A 0 A_SpawnitemEx("AbyssSG2",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
	AYPB FGH 3 bright
	AYPB I 5 bright a_setscale(1,0.75)
	AYPB H 5 bright a_setscale(1,0.5)
	AYPB I 5 bright a_setscale(1,0.25)
	AYPB H 5 bright a_setscale(1,0.05)
	TNT1 A 0 A_die
	Stop
	
		
	Pain:
		GPOS G 3
													 	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH7",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

		GPOS G 3 A_Pain
		GPOS G 3 A_ChangeFlag("NOPAIN", TRUE)
		Goto See
Tickles:
TNT1 A 0 A_Spawnitemex("ThePlanBoner",0,0,6,0,0,0,0, SXF_NOCHECKPOSITION)
Goto Death+1
Death:
TNT1 A 0 A_JumpIfInventory("CHBoner", 1, "Tickles")
		GPOS H 7
		GPOS I 7 A_Scream
		GPOS J 7 A_NoBlocking
		GPOS K 7
		GPOS L 7
		GPOS M 7
		GPOS N -1
		Stop
	XDeath:
		GPOS O 5
		GPOS P 5 A_XScream
		GPOS Q 5 A_NoBlocking
		GPOS RS 5
		GPOS T -1
		Stop
	Raise:
		GPOS NMLKJIH 5
		Goto See
	}
}
ACTOR FireSGguy
{
  Game Doom
  Radius 12
  Height 16
  Speed 21
  FastSpeed 26
  Damage (random(5,15))
  DamageType "Fire"
  Projectile
  +RANDOMIZE
  +thruactors
  RenderStyle Add
  Alpha 0.85
  SeeSound "imp/attack"
  DeathSound "imp/shotx"
  Translation "161:161=200:200", "160:160=177:177", "162:162=184:184", "163:163=204:204", "164:164=186:186", "165:165=204:204", "166:166=189:189", "167:167=207:207"
  States
  {
  Spawn:
    FIRE AB 2 Bright 
    Goto Death
  Death:
    FIRE CDEEDCDE 3 A_Explode(random(3,15),64)
    FIRE FGH 3 Bright A_Explode(random(3,15),64)
    Stop
  }
}


Actor CommonSG : Shotgunguy
{
Game Doom
Species "SGuy"
DamageFactor "Exorcist", 3.0
DamageFactor "DIMp", 0
PainChance "DIMp", 0
Monster
+Dontharmspecies
 
+avoidmelee
tag "Former Sergeant"
States
  {
  
   Spawn:
    SPOS AB 10 A_Look
	  							TNT1 A 0 A_SpawnitemEx("ColorTierIconCH",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    Loop
  See:
    SPOS AABB 3 a_chase
	  							TNT1 A 0 A_SpawnitemEx("ColorTierIconCH",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	SPOS CCDD 3 A_Chase
	  							TNT1 A 0 A_SpawnitemEx("ColorTierIconCH",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    Loop
  Missile:
    							TNT1 A 0 A_SpawnitemEx("ColorTierIconCH",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    SPOS E 10 A_FaceTarget
    SPOS F 10 Bright A_SPosAttackUseAtkSound
    SPOS E 10
    Goto See
  Pain:
    SPOS G 3
	  							TNT1 A 0 A_SpawnitemEx("ColorTierIconCH",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    SPOS G 3 A_Pain
    Goto See
 
  
  

  
Tickles:
TNT1 A 0 A_Spawnitemex("ThePlanBoner",0,0,6,0,0,0,0,SXF_NOCHECKPOSITION)
Goto Death+1
Death:
TNT1 A 0 A_JumpIfInventory("CHBoner", 1, "Tickles")
    SPOS H 5
    SPOS I 5 A_Scream
    SPOS J 5 A_NoBlocking
    SPOS K 5
    SPOS L -1
    Stop
	
								Pain.AbyssPE:
		TNT1 A 0
		TNT1 A 0 A_changeflag("Nopain",true)
	TNT1 A 0 A_setscale(0.8,0.8)
	AYPB AAB 5 bright
	AYPB B 5 bright a_playsound("AbyssForm",0)
	AYPB BBA 5 bright
	AYPB CDE 5 bright
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnitemEx("SplashAbyss",random(-16,16),random(-16,16),random(4,32),16,0,3,random(-359,359),SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnitemEx("SplashAbyss",random(-16,16),random(-16,16),random(4,32),12,0,8,random(-359,359),SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)

	TNT1 A 0 A_SpawnitemEx("AbyssSG2",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
	AYPB FGH 3 bright
	AYPB I 5 bright a_setscale(1,0.75)
	AYPB H 5 bright a_setscale(1,0.5)
	AYPB I 5 bright a_setscale(1,0.25)
	AYPB H 5 bright a_setscale(1,0.05)
	TNT1 A 0 A_die
	Stop
	
	
	XDeath:
		TNT1 AAA 0 A_SpawnItemEx ("CHRandom_GibGenerator", 0,0,32, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_USEBLOODCOLOR | SXF_NOCHECKPOSITION)
		SPOS M 5
		SPOS N 5 a_xscream
		SPOS OP 5
				TNT1 AAA 0 A_SpawnItemEx ("CHRandom_GibGenerator", 0,0,12, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_USEBLOODCOLOR | SXF_NOCHECKPOSITION)
		SPOS Q 5 a_noblocking
		SPOS RST 5
		SPOS U -1
		stop
    Raise:
    SPOS L 5 A_JumpIfInventory("GrowRaisin",1,"Grow")
    SPOS KJIH 5
    Goto See
  Grow:
    SPOS JIH 5
    SPOS A 0 A_Spawnitemex("GreenSG",0,0,6,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 a_die
	Stop
  }
}




ACTOR GreenSG : Shotgunguy
{
  Game Doom
  Health 50
  Radius 20
  Height 56
  Species "SGuy3"
  DamageFactor "Exorcist", 3.0
  DamageFactor "DIMp", 0
  PainChance "DIMp", 0
  Mass 100
  Speed 8
  PainChance 160
  Monster
  +FLOORCLIP
  +Dontharmspecies
   
  +avoidmelee
  SeeSound "shotguy/sight"
  AttackSound "shotguy/attack"
  PainSound "shotguy/pain"
  DeathSound "shotguy/death"
  ActiveSound "shotguy/active"
  Obituary "%o got green splash'd"
  DropItem "Shotgun"
  Dropitem "CH_Shell"
  DropItem "CH_Shell", 64
  DropItem "CH_Shell", 128
  Translation "48:63=[85,255,85]:[0,106,0]", "16:31=[128,255,128]:[0,128,0]", "64:79=[0,174,0]:[0,64,0]", "32:47=[0,128,0]:[0,64,0]", "208:223=112:118", "164:167=119:123", "0:0=0:0" //"48:63=112:127", "64:79=122:127", "16:31=112:127", "208:223=112:127", "0:0=0:0", "96:111=152:159", "108:111=125:127", "32:47=121:127"
  tag "Green Former Sergeant"
  States
  {
  Spawn:
    SPOS AB 10 A_Look
	  							TNT1 A 0 A_SpawnitemEx("ColorTierIconCH2",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    Loop
  See:
    SPOS AABB 3 a_chase
		  							TNT1 A 0 A_SpawnitemEx("ColorTierIconCH2",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	SPOS CCDD 3 A_Chase
		  							TNT1 A 0 A_SpawnitemEx("ColorTierIconCH2",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    Loop
  Missile:
  	  							TNT1 A 0 A_SpawnitemEx("ColorTierIconCH2",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    SPOS E 12 A_FaceTarget
	SPOS F 5 Bright
	SPOS F 0 bright A_Playsound("shotguy/attack")
    SPOS F 0 Bright A_Custommissile("SGshot1",34,-2,1)
	SPOS F 0 Bright A_Custommissile("SGshot1",34,-2,0)
	SPOS F 0 Bright A_Custommissile("SGshot1",34,-2,-1)
	SPOS F 0 Bright A_Custommissile("SGshot1",34,-2,2)
	SPOS F 0 Bright A_Custommissile("SGshot1",34,-2,-2)
	SPOS F 0 Bright A_Custommissile("SGshot1",34,-2,3)
	SPOS F 0 Bright A_Custommissile("SGshot1",34,-2,-3)
    SPOS E 9
    Goto See
	
								Pain.AbyssPE:
		TNT1 A 0
		TNT1 A 0 A_changeflag("Nopain",true)
	TNT1 A 0 A_setscale(0.8,0.8)
	AYPB AAB 5 bright
	AYPB B 5 bright a_playsound("AbyssForm",0)
	AYPB BBA 5 bright
	AYPB CDE 5 bright
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnitemEx("SplashAbyss",random(-16,16),random(-16,16),random(4,32),16,0,3,random(-359,359),SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnitemEx("SplashAbyss",random(-16,16),random(-16,16),random(4,32),12,0,8,random(-359,359),SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)

	TNT1 A 0 A_SpawnitemEx("AbyssSG2",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
	AYPB FGH 3 bright
	AYPB I 5 bright a_setscale(1,0.75)
	AYPB H 5 bright a_setscale(1,0.5)
	AYPB I 5 bright a_setscale(1,0.25)
	AYPB H 5 bright a_setscale(1,0.05)
	TNT1 A 0 A_die
	Stop
	
	
  Pain:
    SPOS G 3
		  							TNT1 A 0 A_SpawnitemEx("ColorTierIconCH2",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    SPOS G 3 A_Pain
    Goto See
Tickles:
TNT1 A 0 A_Spawnitemex("ThePlanBoner",0,0,6,0,0,0,0,SXF_NOCHECKPOSITION)
Goto Death+1
Death:
TNT1 A 0 A_JumpIfInventory("CHBoner", 1, "Tickles")
    SPOS H 5
    SPOS I 5 A_Scream
    SPOS J 5 A_NoBlocking
    SPOS K 5
    SPOS L -1
    Stop
  XDeath:
   		TNT1 AAA 0 A_SpawnItemEx ("CHRandom_GibGenerator", 0,0,32, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_USEBLOODCOLOR | SXF_NOCHECKPOSITION)
    SGUG N 3
    SGUG N 2 A_XScream
    SGUG O 5 A_NoBlocking
	TNT1 AAA 0 A_SpawnItemEx ("CHRandom_GibGenerator", 0,0,18, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_USEBLOODCOLOR | SXF_NOCHECKPOSITION)
    SGUG PQRST 5
    SGUG U -1
    Stop
  Raise:
    SPOS L 5 A_JumpIfInventory("GrowRaisin",1,"Grow")
    SPOS KJIH 5
    Goto See
  Grow:
    SPOS JIH 5
    SPOS A 0 A_Spawnitemex("BlueSG",0,0,6,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 a_die
	Stop
  }
}

ACTOR SGshot1
{
  Game Doom
  Radius 2
  Height 2
  Speed 55
  FastSpeed 80
  Damage (random(2,6))
  DamageType "Plasma"
  Projectile
  +RANDOMIZE
  RenderStyle Add
  Alpha 0.85
  Scale 0.15
  DeathSound "imp/shotx"
  Translation "168:191=112:127"
  States
  {
  Spawn:
    BAL1 AB 4 Bright
    Loop
  Death:
    BAL1 CDE 6 Bright
    Stop
  }
}

ACTOR BlueSG : Shotgunguy
{
  Game Doom
  Health 62
  Radius 20
  Height 56
  Species "SGuy"
  DamageFactor "Exorcist", 3.0
  DamageFactor "DIMp", 0
  PainChance "DIMp", 0
  Mass 110
  Speed 9
  PainChance 150
  Monster
  +FLOORCLIP
  +Dontharmspecies
   
  +avoidmelee
  AttackSound "shotguy/attack"
  SeeSound "SGUY2/See"
  PainSound "Form2/Hurt"
  DeathSound "Sguy2/Die"
  ActiveSound "shotguy/active"
  Obituary "%o got overdrastic blues relief"
  DropItem "Shotgun"
  Dropitem "CH_Shell"
  Dropitem "CH_Shell"
  DropItem "HealthBonus"
  DropItem "HealthBonus", 64
  DropItem "HealthBonus", 128
  DropItem "CH_ShellBox", 42
  Translation "16:31=[100,100,255]:[0,0,119]", "48:63=[79,79,255]:[0,0,136]", "64:79=[0,0,128]:[0,0,34]", "32:47=199:207", "208:223=240:247", "160:167=192:207", "168:178=0:0", "0:0=0:0", "96:111=240:247" //"16:31=197:207", "48:63=196:207", "64:79=206:207", "160:167=205:207", "208:223=199:202", "168:191=112:127", "32:47=201:207"
  tag "Blue Former Sergeant"
  States
  {
  Spawn:
    SPOS AB 10 A_Look
		  							TNT1 A 0 A_SpawnitemEx("ColorTierIconCH3",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    Loop
  See:
    SPOS AABB 3 a_chase
			  							TNT1 A 0 A_SpawnitemEx("ColorTierIconCH3",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	SPOS CCDD 3 A_Chase
			  							TNT1 A 0 A_SpawnitemEx("ColorTierIconCH3",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    Loop
  Missile:
  		  							TNT1 A 0 A_SpawnitemEx("ColorTierIconCH3",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    SPOS E 10 A_FaceTarget
	SPOS E 5 A_JumpIfCloser(350,"Lance")
	SPOS F 5 
    SPOS F 0 Bright A_Customrailgun(random(2,8),1,"none","White",RGF_NOPIERCING,1,25,"none",0,0,0,0,3)
	SPOS F 0 Bright A_Customrailgun(random(2,8),1,"none","Blue",RGF_NOPIERCING,1,12,"none",0,0,0,0,1)
	SPOS F 0 Bright A_Customrailgun(random(2,8),1,"none","White",RGF_NOPIERCING,1,33,"none",0,0,0,0,1)
    SPOS E 9
    Goto See
  Lance:
    SPOS F 2 Bright A_FaceTarget
	SPOS F 4 Bright A_Custommissile("SGLance1",34,-2)
	SPOS E 9
	Goto See
	
	
								Pain.AbyssPE:
		TNT1 A 0
		TNT1 A 0 A_changeflag("Nopain",true)
	TNT1 A 0 A_setscale(0.8,0.8)
	AYPB AAB 5 bright
	AYPB B 5 bright a_playsound("AbyssForm",0)
	AYPB BBA 5 bright
	AYPB CDE 5 bright
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnitemEx("SplashAbyss",random(-16,16),random(-16,16),random(4,32),16,0,3,random(-359,359),SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnitemEx("SplashAbyss",random(-16,16),random(-16,16),random(4,32),12,0,8,random(-359,359),SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)

	TNT1 A 0 A_SpawnitemEx("AbyssSG2",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
	AYPB FGH 3 bright
	AYPB I 5 bright a_setscale(1,0.75)
	AYPB H 5 bright a_setscale(1,0.5)
	AYPB I 5 bright a_setscale(1,0.25)
	AYPB H 5 bright a_setscale(1,0.05)
	TNT1 A 0 A_die
	Stop
	
	
  Pain:
    SPOS G 3
			  							TNT1 A 0 A_SpawnitemEx("ColorTierIconCH3",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    SPOS G 3 A_Pain
    Goto See
Tickles:
TNT1 A 0 A_Spawnitemex("ThePlanBoner",0,0,6,0,0,0,0,SXF_NOCHECKPOSITION)
Goto Death+1
Death:
TNT1 A 0 A_JumpIfInventory("CHBoner", 1, "Tickles")
    SPOS H 5
    SPOS I 5 A_Scream
    SPOS J 5 A_NoBlocking
    SPOS K 5
    SPOS L -1
    Stop
  XDeath:
     		TNT1 AAA 0 A_SpawnItemEx ("CHRandom_GibGenerator", 0,0,32, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_USEBLOODCOLOR | SXF_NOCHECKPOSITION)
    SGUB N 6 A_XScream
    SGUB O 6 A_NoBlocking
	     		TNT1 AAA 0 A_SpawnItemEx ("CHRandom_GibGenerator", 0,0,12, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_USEBLOODCOLOR | SXF_NOCHECKPOSITION)
    SGUB PQRST 6
    SGUB U -1
    Stop
  Raise:
    SPOS L 5 A_JumpIfInventory("GrowRaisin",1,"Grow")
    SPOS KJIH 5
    Goto See
  Grow:
    SPOS JIH 5
    SPOS A 0 A_Spawnitemex("PurpleSG",0,0,6,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 a_die
	Stop
  }
}

ACTOR SGLance1
{
  Game Doom
  DamageType "Plasma"
  Radius 13
  Height 8
  Speed 20
  Damage 1
  Projectile
  +Ripper
  +Strifedamage
  RenderStyle Add
  Alpha 0.75
  Scale 0.3
  SeeSound "weapons/plasmax"
  DeathSound "weapons/plasmax"
  States
  {
  Spawn:
  TNT1 A 0
  Fly:
    PLSS ABCDE 2 Bright A_spawnitemex("SGLance2",0,0,1,4)
    Goto Death
  Death:
    PLSE E 1 Bright A_spawnitemex("SGLance5",0,0,1,4)
    Stop 
  }
}

ACTOR SGLance5
{
  Game Doom
  DamageType "Plasma"
  Radius 13
  Height 8
  Speed 1
  Damage 1
  Projectile
  +Ripper
  RenderStyle Add
  Alpha 1.25
  Scale 1.5
  SeeSound "weapons/plasmax"
  DeathSound "weapons/plasmax"
  States
  {
  Spawn:
    PLSS ABC 2 Bright 
    Goto Death
  Death:
    PLSE DCE 2 Bright a_explode(random(2,8),32)
    Stop 
  }
}

ACTOR SGLance2 : SGLance1
{
  Game Doom
  DamageType "Plasma"
  Radius 13
  Height 8
  Speed 1
  Damage (random(0,1))
  Projectile
  -Ripper
  Alpha 0.75
  Scale 0.5
  States
  {
  Spawn: 
  TNT1 A 0
  Fly:
    PLSS ABC 2 Bright  A_spawnitemex("SGLance3",0,0,1,3)
    Goto Death
  Death:
    PLSE DE 2 Bright 
    Stop
  }
}

ACTOR SGLance3 : SGLance2
{
  Game Doom
  DamageType "Plasma"
  Radius 13
  Height 8
  Speed 1
  Projectile
  Alpha 0.75
  Scale 0.7
  States
  {
  Spawn: 
  TNT1 A 0
  Fly:
    PLSS ABC 2 Bright  A_spawnitemex("SGLance4",0,0,1,3)
    Goto Death
  Death:
    PLSE DE 1 Bright 
    Stop
  }
}

ACTOR SGLance4 : SGLance2
{
Scale 0.45
  States
  {
  Spawn: 
    PLSS AB 2 Bright
    Goto Death
  Death:
    PLSE ABCDE 2 Bright
    Stop
  }
}

ACTOR PurpleSG : Shotgunguy
{
  Game Doom
  Health 83
  Radius 20
  Height 56
  Species "SGuy2"
  DamageFactor "Exorcist", 3.0
  DamageFactor "DIMp", 0
  PainChance "DIMp", 0
  Mass 110
  Speed 9
  PainChance 150
  Monster
  +FLOORCLIP
  +Dontharmspecies
   +NOFEAR
  SeeSound "SGUY2/See"
  AttackSound "none"
  PainSound "Form2/Hurt"
  DeathSound "Sguy2/Die"
  ActiveSound "shotguy/active"
  Obituary "%o was roasted nicely"
  DropItem "Shotgun"
  Dropitem "CH_Cell",128
  DropItem "CH_CellPack", 32
  Dropitem "CH_Shell"
  DropItem "HealthBundle"

  DropItem "ArmorBonus", 128
  Translation "4:4=250:250", "80:95=251:254", "96:111=184:191","192:207=250:254"
  tag "Purple Former Sergeant"
 States
  {
  Spawn:
    HMZP AB 10 A_Look
			  							TNT1 A 0 A_SpawnitemEx("ColorTierIconCH4",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    Loop
  See:
    HMZP AABB 3 a_chase
				  							TNT1 A 0 A_SpawnitemEx("ColorTierIconCH4",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	HMZP CCDD 3 A_Chase
				  							TNT1 A 0 A_SpawnitemEx("ColorTierIconCH4",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    Loop
  Missile:
  			  							TNT1 A 0 A_SpawnitemEx("ColorTierIconCH4",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    HMZP E 2 A_Jumpifcloser(300,"Fire1")
	HMZP E 2 A_Jump(255,"Getcloser")
	Goto See
  GetCloser:
    HMZP A 0 A_Playsound("gas/gas1")
    HMZP AB 3 A_Skullattack(12)
	Goto See
  Fire1:
    HMZP E 2 A_JumpIfCloser(300,"Fire2")
	HMZP E 2 A_Jump(255,"See")
	Goto See
  Fire2:
    HMZP E 2 A_FaceTarget
    HMZP F 1 Bright A_Custommissile("PurpFire2",42,1,random(-1,-1))
	HMZP E 2 A_FaceTarget
	HMZP F 1 Bright A_Custommissile("PurpFire2",42,1,random(-1,-1))
	HMZP E 2 A_FaceTarget
	HMZP F 1 Bright A_Custommissile("PurpFire2",42,1,random(-1,-1))
    HMZP E 2 A_Monsterrefire(180,"See")
    Goto Fire1
	
								Pain.AbyssPE:
		TNT1 A 0
		TNT1 A 0 A_changeflag("Nopain",true)
	TNT1 A 0 A_setscale(0.8,0.8)
	AYPB AAB 5 bright
	AYPB B 5 bright a_playsound("AbyssForm",0)
	AYPB BBA 5 bright
	AYPB CDE 5 bright
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnitemEx("SplashAbyss",random(-16,16),random(-16,16),random(4,32),16,0,3,random(-359,359),SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnitemEx("SplashAbyss",random(-16,16),random(-16,16),random(4,32),12,0,8,random(-359,359),SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)

	TNT1 A 0 A_SpawnitemEx("AbyssSG2",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
	AYPB FGH 3 bright
	AYPB I 5 bright a_setscale(1,0.75)
	AYPB H 5 bright a_setscale(1,0.5)
	AYPB I 5 bright a_setscale(1,0.25)
	AYPB H 5 bright a_setscale(1,0.05)
	TNT1 A 0 A_die
	Stop
	
	
  Pain:
    HMZP G 3
				  							TNT1 A 0 A_SpawnitemEx("ColorTierIconCH4",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    HMZP G 3 A_Pain
    Goto See
Tickles:
TNT1 A 0 A_Spawnitemex("ThePlanBoner",0,0,6,0,0,0,0,SXF_NOCHECKPOSITION)
Goto Death+1
Death:
TNT1 A 0 A_JumpIfInventory("CHBoner", 1, "Tickles")
    HMZP H 5
    HMZP I 5 A_Scream
    HMZP J 5 A_NoBlocking
    HMZP K 5
    HMZP L -1
    Stop
  XDeath:
    TNT1 AAA 0 A_SpawnItemEx ("CHRandom_GibGenerator", 0,0,32, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_USEBLOODCOLOR | SXF_NOCHECKPOSITION)
    SGUP M 0
    SGUP N 5 A_XScream
    SGUP O 5 A_NoBlocking
    TNT1 AAA 0 A_SpawnItemEx ("CHRandom_GibGenerator", 0,0,12, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_USEBLOODCOLOR | SXF_NOCHECKPOSITION)
    SGUP PQRST 5
    SGUP U -1
    Stop
  Raise:
    HMZP L 5
    HMZP KJIH 5
    Goto See
  }
}

ACTOR Purpfire2
{
  Game Doom
  Radius 8
  Height 8
  Speed 16
  Damage (random(5,10))
  DamageType Fire
  Projectile
  RenderStyle Add
  Alpha 0.85
  Scale 1.1
  SeeSound "fire/fire1"
  DeathSound "Imp/shotx"
  Translation "192:207=250:254"
  States
  {
  Spawn:
    PFIR ABCD 5 Bright A_Explode(random(3,10),20)
    Goto death
  Death:
    PFIR EFFG 5 Bright A_Explode(random(3,10),20)
    Stop
  }
}


ACTOR YellowSG
{
    Health 96
	Bloodcolor "Yellow"
    Radius 20
    Height 56
    Speed 9
    PainChance 128
	DamageFactor "Exorcist", 3.0
	DamageFactor "DIMp", 0
	PainChance "DIMp", 0
    MONSTER
    +FLOORCLIP
	+Missilemore
	+NOFEAR
    SeeSound "SGUY2/See"
    AttackSound "asgguy/asgfir"
    PainSound "Form2/Hurt"
    DeathSound "Sguy2/Die"
    ActiveSound "grunt/active"
    Obituary "%o was made into fine swiss cheese by Orange Sergeant"
	DropItem "CH_Shell", 128
	DropItem "CH_Shell", 128
    DropItem "CH_ShellBox"
	DropItem "HealthBonus"

	DropItem "CH_GreenArmor", 64
	DropItem "HealthBundle", 128
	DropItem "Shotgun"
    tag "Yellow Former Sergeant"
	States
    {
    Spawn:
        ASGZ AB 10 A_Look
					  							TNT1 A 0 A_SpawnitemEx("ColorTierIconCH5",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

        Loop
	Dodger:
	    ASGZ AABB 4 A_fastchase
							  							TNT1 A 0 A_SpawnitemEx("ColorTierIconCH5",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

		ASGZ CCDD 4 A_FastChase
							  							TNT1 A 0 A_SpawnitemEx("ColorTierIconCH5",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

		ASGZ A 0 A_Jump(88, "See")
		Loop
    See:
        ASGZ AABB 4 a_chase
							  							TNT1 A 0 A_SpawnitemEx("ColorTierIconCH5",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

		ASGZ CCDD 4 A_Chase
							  							TNT1 A 0 A_SpawnitemEx("ColorTierIconCH5",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

		ASGZ A 0 A_Jump(88, "Dodger")
        Loop
    Missile:
						  							TNT1 A 0 A_SpawnitemEx("ColorTierIconCH5",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    	TNT1 A 0 A_JumpIfInventory ("ASGZAmmo", 16, "Reload")
		TNT1 A 0 A_stop
    	ASGZ E 5 A_FaceTarget
    	TNT1 A 0 A_GiveInventory ("ASGZAmmo", 1)
    	ASGZ F 5 Bright A_CustomBulletAttack (5, 4, 3, 3, "BulletPuff", 0)
    	ASGZ E 7
    	TNT1 A 0 A_JumpIfInventory ("ASGZAmmo", 16, "Reload")
    	TNT1 A 0 A_PlaySound("asgguy/asgld1")
    	ASGZ E 5 A_CPosRefire
    	TNT1 A 0 A_GiveInventory ("ASGZAmmo", 1)
    	ASGZ F 5 Bright A_CustomBulletAttack (5, 4, 3, 3, "BulletPuff", 0)
    	ASGZ E 7
    	TNT1 A 0 A_JumpIfInventory ("ASGZAmmo", 16, "Reload")
    	TNT1 A 0 A_PlaySound("asgguy/asgld1")
    	ASGZ E 5 A_CPosRefire
    	TNT1 A 0 A_GiveInventory ("ASGZAmmo", 1)
    	ASGZ F 5 Bright A_CustomBulletAttack (5, 4, 3, 3, "BulletPuff", 0)
    	ASGZ E 7
    	TNT1 A 0 A_JumpIfInventory ("ASGZAmmo", 16, "Reload")
    	TNT1 A 0 A_PlaySound("asgguy/asgld1")
    	ASGZ E 5 A_CPosRefire
    	TNT1 A 0 A_GiveInventory ("ASGZAmmo", 1)
    	ASGZ F 5 Bright A_CustomBulletAttack (5, 4, 3, 3, "BulletPuff", 0)
    	ASGZ E 7
    	TNT1 A 0 A_PlaySound("asgguy/asgld1")
		TNT1 A 0 A_JumpIfInventory ("ASGZAmmo", 16, "Reload")
        Goto See
    Reload:
    	TNT1 A 0 A_ChangeFlag("NoPain", 1)
    	TNT1 A 0 A_PlaySound("asgguy/asgout")
    	ASGZ E 60 A_TakeInventory ("ASGZAmmo", 16)
    	ASGZ E 8 A_PlaySound("asgguy/asgin")
    	TNT1 A 0 A_ChangeFlag("NoPain", 0)
    	Goto See
		
									Pain.AbyssPE:
		TNT1 A 0
		TNT1 A 0 A_changeflag("Nopain",true)
	TNT1 A 0 A_setscale(0.8,0.8)
	AYPB AAB 5 bright
	AYPB B 5 bright a_playsound("AbyssForm",0)
	AYPB BBA 5 bright
	AYPB CDE 5 bright
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnitemEx("SplashAbyss",random(-16,16),random(-16,16),random(4,32),16,0,3,random(-359,359),SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnitemEx("SplashAbyss",random(-16,16),random(-16,16),random(4,32),12,0,8,random(-359,359),SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)

	TNT1 A 0 A_SpawnitemEx("AbyssSG2",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
	AYPB FGH 3 bright
	AYPB I 5 bright a_setscale(1,0.75)
	AYPB H 5 bright a_setscale(1,0.5)
	AYPB I 5 bright a_setscale(1,0.25)
	AYPB H 5 bright a_setscale(1,0.05)
	TNT1 A 0 A_die
	Stop
	
		
    Pain:
        ASGZ G 3
							  							TNT1 A 0 A_SpawnitemEx("ColorTierIconCH5",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

        ASGZ G 3 A_Pain
		ASGZ G 3 A_Jump(88,"Dodger")
        Goto See
Tickles:
TNT1 A 0 A_Spawnitemex("ThePlanBoner",0,0,6,0,0,0,0,SXF_NOCHECKPOSITION)
Goto Death+1
Death:
TNT1 A 0 A_JumpIfInventory("CHBoner", 1, "Tickles")
        ASGZ H 5
        ASGZ I 5 A_Scream
        ASGZ J 5 A_Fall
        ASGZ KLM 5
        ASGZ N -1
        Stop
    XDeath:
	    		TNT1 AAA 0 A_SpawnItemEx ("CHRandom_GibGenerator", 0,0,32, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_USEBLOODCOLOR | SXF_NOCHECKPOSITION)
        ASGZ O 5
        ASGZ P 5 A_XScream
        ASGZ Q 5 A_Fall
				TNT1 AAA 0 A_SpawnItemEx ("CHRandom_GibGenerator", 0,0,12, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_USEBLOODCOLOR | SXF_NOCHECKPOSITION)
        ASGZ RSTUV 5
        ASGZ W -1
        Stop
    Raise:
        ASGZ NMLKJIH 5
        Goto See
    }
}

ACTOR ASGZAmmo: Ammo
{
     Inventory.MaxAmount 16
}

Actor RedMessImp3 : RedMessImp2
{
speed 48
scale 0.35
  States
  {
  Spawn:
   BAL1 A 1  A_Custommissile("RedMessImp",2,0,random(-180,180),0,random(-180,180))
   BAL1 B 1  A_Custommissile("RedMessImp",2,0,random(-180,180),0,random(-180,180))
   Loop
  Death:
   BAL1 CCCCCCCCCCCCCCC 0 A_Custommissile("RedMessImp",2,0,random(-180,180),0,random(-180,180))
   BAL1 CDE 1 A_SetTranslucent(0.35)
   Stop
}
}

ACTOR RedSG
{
	Health 150
	Radius 20
	Height 56
	Scale 0.9
	Speed 9
	Mass 5000
	PainChance 110
	DamageFactor "Exorcist", 3.0
	DamageFactor "DIMp", 0
	PainChance "DIMp", 0
	MONSTER 
	+FloorClip
	+Missilemore
	+NOFEAR
	SEESOUND "SSGUNER/sight"
	ATTACKSOUND "SSGUNER/SSG"
	PAINSOUND "grunt/pain"
	DEATHSOUND "SSGUNER/death"
	ACTIVESOUND "SSGUNER/idle"
	OBITUARY "%o got splattered by the deadly force of Red Shotgunner"
	DropItem "CH_SuperShotgun", 128
	DropItem "CH_Shell", 128
	DropItem "CH_Shell", 128
    DropItem "CH_ShellBox"
    Dropitem "Shotgun"
	DropItem "ArmorBundle", 64
	DropItem "CH_GreenArmor", 34
	DropItem "HealthBundle"
	Decal Bulletchip
	Translation "112:127=175:191"
	tag "Red RNG Former Sergeant"
	states
	{
	Spawn:
		GPOS A 10 A_Look
							  							TNT1 A 0 A_SpawnitemEx("ColorTierIconCH6",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

		Loop
	See:
		GPOS AABB 4 a_chase
									  							TNT1 A 0 A_SpawnitemEx("ColorTierIconCH6",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

		GPOS CCDD 4 A_Chase
									  							TNT1 A 0 A_SpawnitemEx("ColorTierIconCH6",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

		Loop
	Missile:
								  							TNT1 A 0 A_SpawnitemEx("ColorTierIconCH6",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	    GPOS E 0 Bright A_jumpifcloser(650,"shotgunned")
		GPOS E 10 BRIGHT A_FaceTarget
		GPOS G 0 Bright A_CustomMissile ("RedMessImp3", 42, 12, 0)
		GPOS G 0 Bright A_CustomMissile ("RedMessImp3", 32, random(4,8), 0)
		GPOS G 0 Bright A_CustomMissile ("RedMessImp3", 22, random(14,26), 0)
		GPOS G 0 Bright A_CustomMissile ("RedMessImp3", 22, 12, 0)
		GPOS G 0 Bright A_CustomMissile ("RedMessImp3", 42, random(6,18), 0)
		GPOS E 8 BRIGHT
		Goto see
		Shotgunned:
		GPOS E 5 BRIGHT A_FaceTarget
		PLAY F 0 A_JumpIfInventory("ShotgunWhere", 1, "Jammed")
		GPOS E 5 BRIGHT A_FaceTarget
		GPOS F 8 BRIGHT A_CustomBulletAttack(11.2, 7.1, random(15,20), random(1,3), "Bulletpuff")
		GPOS E 8 BRIGHT
	    PLAY F 0 A_GiveInventory("ShotgunWhere",1)
    Goto See
	
								Pain.AbyssPE:
		TNT1 A 0
		TNT1 A 0 A_changeflag("Nopain",true)
	TNT1 A 0 A_setscale(0.8,0.8)
	AYPB AAB 5 bright
	AYPB B 5 bright a_playsound("AbyssForm",0)
	AYPB BBA 5 bright
	AYPB CDE 5 bright
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnitemEx("SplashAbyss",random(-16,16),random(-16,16),random(4,32),16,0,3,random(-359,359),SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnitemEx("SplashAbyss",random(-16,16),random(-16,16),random(4,32),12,0,8,random(-359,359),SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)

	TNT1 A 0 A_SpawnitemEx("AbyssSG2",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
	AYPB FGH 3 bright
	AYPB I 5 bright a_setscale(1,0.75)
	AYPB H 5 bright a_setscale(1,0.5)
	AYPB I 5 bright a_setscale(1,0.25)
	AYPB H 5 bright a_setscale(1,0.05)
	TNT1 A 0 A_die
	Stop
	
	
  Jammed:
    GPOS  E 8 Bright
	GPOS  G 2 A_Playsound("weapons/sshotl") 
	GPOS  G 10 A_TakeInventory("ShotgunWhere",1)
	PLAY E 0
	Goto Missile
		Goto See
	Pain:
		GPOS G 3
									  							TNT1 A 0 A_SpawnitemEx("ColorTierIconCH6",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

		GPOS G 3 A_Pain
		GPOS G 3 A_ChangeFlag("NOPAIN", TRUE)
		Goto See
Tickles:
TNT1 A 0 A_Spawnitemex("ThePlanBoner",0,0,6,0,0,0,0,SXF_NOCHECKPOSITION)
Goto Death+1
Death:
TNT1 A 0 A_JumpIfInventory("CHBoner", 1, "Tickles")
		GPOS H 7
		GPOS I 7 A_Scream
		GPOS J 7 A_NoBlocking
		GPOS K 7
		GPOS L 7
		GPOS M 7
		GPOS N -1
		Stop
	XDeath:
		 TNT1 AAA 0 A_SpawnItemEx ("CHRandom_GibGenerator", 0,0,32, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_USEBLOODCOLOR | SXF_NOCHECKPOSITION)
		GPOS O 5
		GPOS P 5 A_XScream
		GPOS Q 5 A_NoBlocking
		TNT1 AAA 0 A_SpawnItemEx ("CHRandom_GibGenerator", 0,0,12, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM | SXF_USEBLOODCOLOR | SXF_NOCHECKPOSITION)
		GPOS RS 5
		GPOS T -1
		Stop
	Raise:
		GPOS NMLKJIH 5
		Goto See
	}
}

ACTOR SGGasNade
{
  Game Doom
  Radius 8
  Height 8
  Speed 25
  Damage (random(20,75))
  Projectile
  -NOGRAVITY
  +GRENADETRAIL
  BounceType "Doom"
  Gravity 0.29
  SeeSound "weapons/grenlf"
  DeathSound "weapons/grenlx"
  BounceSound "weapons/grbnce"
  DamageType "Fire"
  States
  {
  Spawn:
    SGRN A 1 Bright
	SGRN A 1 Bright A_Jump(8,"Bounce")
	SGRN A 1 Bright A_Jump(4,"Death")
    Loop
  Bounce:
      SGRN A 2  Bright ThrustThing(angle*256/(random(1,360)), 12, 0, 0)
	  Goto Spawn	
  Death:
    MISL B 8 Bright A_Explode(random(20,50),128)
    MISL CCCC 2 Bright A_Spawnitemex("Gas14",random(-180,180),random(-180,180),random(1,32),0,0,0,SXF_NOCHECKPOSITION)
    MISL DDDD 2 Bright A_Spawnitemex("Gas14",random(-220,220),random(-220,220),random(1,32),0,0,0,SXF_NOCHECKPOSITION)
	MISL DDDDDD 0 Bright A_Spawnitemex("Gas14",random(-280,280),random(-280,280),random(1,32),0,0,0,SXF_NOCHECKPOSITION)
    Stop
	}
	
}

ACTOR DetoPuffCG2
{
  Projectile
  RenderStyle "add"
  Alpha 1.25
  Scale 0.55
  height 1
  radius 2
  mass 1
  Damagetype "Fire"
  SeeSound  "weapons/firex4"
  States
  {
  Spawn:
    MISL BC 1 Bright 
	Goto Death
	Death:
    MISL D 4 Bright A_Explode(random(12,36),42)
	MISL E 4 Bright A_Burst("PufFCHBS")
    Stop
  }
}

ACTOR AirStrikeCHBS
{
  Game Doom
  Radius 6
  Height 8
  Speed 28
  Mass 50
  Damage (random(5,40))
  DamageType "Fire"
  Projectile
  +CEILINGHUGGER
  +FLOAT
  +NOGRAVITY
  RenderStyle Add
  Gravity 7
  Alpha 0.35
  Scale 0.5
  SeeSound "caco/attack"
  DeathSound "fire/fire5"
  States
  {
  Spawn:
    HEAD DD 2 Bright A_SpawnItemEx("MissileCHBS",random(-80,80),random(-80,80),-32,random(-10,13),random(-10,25),1,SXF_NOCHECKPOSITION)
	HEAD DD 3 Bright A_SpawnItemEx("MissileCHBS",random(-200,200),random(-200,200),-32,random(-10,13),random(-10,25),1,SXF_NOCHECKPOSITION)
    Loop
  Death:
    BBOM A 2 Bright A_SetScale(1)
	BBOM B 2 A_SetTranslucent(0.65)
    BBOM CD 3 Bright A_explode(random(10,40),108)
    BBOM EFG 6 Bright A_explode(random(10,45),108)
   Stop
  }
}

ACTOR MissileCHBS
{
   Radius 11
   Height 8 
   Speed 10
   Damage (random(10,50))
   DamageType "Fire"
   PROJECTILE
   -Nogravity
   Gravity 1.5
   Scale 0.7
   SeeSound "weapons/hominglaunch"
   DeathSound "weapons/homingexplode"
   Dropitem "Shell",12
   States
   {
   Spawn:
      MSLH A 2 Bright 
      Loop
   Death:
      MISL B 0 A_SetTranslucent(0.8,1)
      MISL B 4 Bright A_Explode(random(5,40),98)
      MISL C 5 Bright
      MISL D 6 Bright A_Burst("PufFCHBS")
      Stop
   }
}

Actor PufFCHBS
{
    Radius 1
    Height 1
    +NOCLIP
    +NOGRAVITY
	projectile
	speed 8
	Damage(random(0,1))
    Renderstyle ADD
    Alpha 0.75
    States
    {
    Spawn:
        SMK2 ABCDE 2 
        Stop
    }
}
Actor CHBSTarget
{
    Radius 1
    Height 1
	Projectile
    +NOCLIP
    +NOGRAVITY
	+Nointeraction
	Speed 1
    Renderstyle ADD
    Alpha 1.25
	Scale 1.1
    States
    {
    Spawn:
	CHTA A 3 Bright 
	TNT1 A 3 Bright 
	Goto Fly
	Fly:
    CHTA A 4 Bright  A_Playsound("prox/beep",7, 2, false, ATTN_NONE)
	TNT1 A 4 Bright 
    CHTA A 4 Bright 
	TNT1 A 4 Bright  A_Playsound("prox/beep",7, 2, false, ATTN_NONE)
	CHTA A 4 Bright 
	TNT1 A 3 Bright 
	CHTA A 3 Bright 
	TNT1 A 3 Bright
        Stop
    }
}

Actor BlackSG
{
states
{
Spawn:
TNT1 A 0
Goto Scripted
Scripted:
TNT1 A 0 A_JumpIf(CallACS("CH_BlackBossy") == 1, "First") 
TNT1 A 0
Goto Third
First:
TNT1 A 0 A_SpawnitemEx("BlackSG3",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
stop
Third:
TNT1 A 0 A_SpawnitemEx("RedSG",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
stop
}
}

Actor BlackSG3
{
  Health 1950
  Height 56
  Radius 20
  RadiusDamageFactor 0.33
  DamageFactor "Plasma", 1.1
  DamageFactor "Heroic", 3.0
  Speed 16
  PainChance 96
  Species "BlackSG"
  Monster
  +Boss
  -NoradiusDMG
  +FloorClip
  +dontmorph 
  +NoInfighting
  +Missilemore
  +thruspecies
  +dontharmspecies
  +NOFEAR
  SeeSound "ZSpecOps/Sight"
  ActiveSound "ZSpecOps/Sight"
  PainSound "ZSpecOps/Pain"
  DeathSound "ZSpecOps/Death"
  Obituary "%o was gunned down by the Leader of black shotgun crew"
  Decal BulletChip
  DropItem "Shotgun"
  DropItem "ArmorBundle"
  DropItem "HealthBundle"
  DropItem "CH_ShellBox"
  DropItem "CH_ShellBox"
  DropItem "CH_Medikit"
  DropItem "Backpack"
  DropItem "BackPackBundle"

  Dropitem "RLAssaultShotgunPickup", 102
  Dropitem "RLSteelBeastPickup", 24
    Dropitem "RareArmorPool", 32
  Dropitem "RLUniqueWeaponSpawner",16
  Translation "0:255=%[0.00,0.00,0.00]:[0.67,0.39,0.71]","175:191=112:127", "32:47=119:127"
  Renderstyle Soultrans
  Alpha 1.50
  Scale 1.1
  Tag "Shotgun Crew Commander"
  States
  {
  Spawn:
    ZSP1 A 0
	ZSP1 A 0 Bright A_Spawnitemex("BlackSG2",0,-5,6,0,0,0,0,SXF_SetMaster| SXF_NOCHECKPOSITION)
	ZSP1 A 0 Bright A_Spawnitemex("BlackSG2",0,5,6,0,0,0,0,SXF_SetMaster| SXF_NOCHECKPOSITION)
	ZSP1 A 0
	Goto Scripted
	Scripted:
	ZSP1 A 0
	ZSP1 A 0 ACS_NamedExecuteAlways("AnnounceBlackSG")
	ZSP1 A 0
	Goto Idle
	Idle:
    ZSP1 AAAAAAAAAABBBBBBBBBB 1 A_Look
								 	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH10",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    Loop
	See:
	ZSP1 ABCD 3 A_Chase
									 	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH10",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	ZSP1 A 0 A_Jump(64, "Odd")
	Loop
	Odd:
	ZSP1 A 2 A_Wander
									 	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH10",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	ZSP1 BC 3 A_FastChase
	ZSP1 D 2 A_Wander
	Goto See
	Missile:
	ZSP1 A 0 
									 	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH10",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	ZSP1 A 0 A_JumpIfcloser(500,"Shotgunned")
	ZSP1 A 0 A_Jump(128,"AirStrike","Snipe")
	ZSP1 A 0 A_Jump(255,"Summon","AirStrike","snipe")
	Goto See
	Summon:
	ZSP1 G 3 Bright A_PlaySound("ZSpecOps/Sight", 7, 2, false, ATTN_NONE)
	ZSP1 G 3 Bright A_PlaySound("ZSpecOps/Sight", 7, 2, false, ATTN_NONE)
	ZSP1 G 3 Bright A_PlaySound("ZSpecOps/Sight", 7, 2, false, ATTN_NONE)
	ZSP1 A 9 Bright A_FaceTarget
	ZSP1 A 0 Bright A_Spawnitemex("BlackSG2",0,-5,6,0,0,0,0,SXF_SetMaster| SXF_NOCHECKPOSITION)
	ZSP1 A 1 Bright A_Spawnitemex("BlackSG2",0,5,6,0,0,0,0,SXF_SetMaster| SXF_NOCHECKPOSITION)
	ZSP1 A 1 Bright A_Spawnitemex("BlackSG2",5,-5,6,0,0,0,0,SXF_SetMaster | SXF_NOCHECKPOSITION)
	ZSP1 A 1 Bright A_Spawnitemex("BlackSG2",-5,5,6,0,0,0,0,SXF_SetMaster| SXF_NOCHECKPOSITION)
	Goto See
	Shotgunned:
    ZSP1 EEE 4 A_FaceTarget
    ZSP1 F 0 Bright A_PlayWeaponSound("Weapons/ShotGF")
    ZSP1 F 2 Bright A_CustomBulletAttack(random(1,12), random(1,12),random(3,9),random(1,8), "DetoPuffCG")
	ZSP1 F 0 Bright A_Jump(64,"Nadetoss")
    ZSP1 EE 2 A_FaceTarget
	ZSP1 E 2 A_CheckSight("See")
	ZSP1 E 0 A_JumpIfCloser(450, "Missile")
    Goto See
	Snipe:
	ZSP1 EEE 8 bright A_FaceTarget
	ZSP1 E 1 A_CheckSight("See")
	ZSP1 E 5 Bright A_PlaySound("ZSpecOps/Sight", 7, 2, false, ATTN_NONE)
	ZSP1 E 1 A_CheckSight("See")
	ZSP1 E 1 A_FaceTarget
    ZSP1 F 0 Bright A_PlayWeaponSound("Weapons/ShotGF")
    ZSP1 F 4 Bright A_VileTarget("DetoPuffCG2")
	Goto See
  AirStrike:
    ZSP1 GG 6 bright A_FaceTarget
	ZSP1 E 8 Bright A_VileTarget("CHBSTarget")
	ZSP1 EF 5 Bright
	ZSP1 F 4 Bright A_Custommissile("AirStrikeCHBS",64,0,1)
	ZSP1 E 2
	Goto See
  Nadetoss:
    ZSP1 E 8 A_Facetarget
	ZSP1 E 2 A_Playsound("fire/fire4")
	ZSP1 E 2 A_Custommissile("SGGasNade",48,0,random(-3,3),0,random(3,12))
	ZSP1 E 2 
	Goto See
  Pain:
    ZSP1 G 4
									 	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH10",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

    ZSP1 G 4 A_Pain
    ZSP1 G 0 A_Jump(96, "See")
    Goto Odd
  Death:
    ZSP1 H 5
    ZSP1 I 5 A_Scream
    ZSP1 J 5
    ZSP1 K 5 A_NoBlocking
    ZSP1 L -1
    stop
  }
}

Actor BlackSG2
{
  Health 280
  Height 56
  Radius 20
  Speed 13
  PainChance 96
  DamageFactor Fire, 0.8
  DamageFactor "Plasma", 0.8
  DamageFactor BFGSplash, 0.7
  DamageFactor "Heroic", 3.0
  Species "BlackSG"
  Monster
  -NoradiusDMG
  +FloorClip
  +dontharmspecies
  +NoInfighting
  +thruspecies
  +Missilemore
  -ACTIVATEMCROSS
  +NOFEAR
  SeeSound "ZSpecOps/Sight"
  ActiveSound "ZSpecOps/Sight"
  PainSound "ZSpecOps/Pain"
  DeathSound "ZSpecOps/Death"
  Obituary "%o was gunned down by the black shotgun crew"
  Decal BulletChip
  DropItem "Shotgun"
  DropItem "ArmorBundle",84
  DropItem "HealthBundle",178
  DropItem "CH_ShellBox",64
  DropItem "CH_Medikit", 34
  tag "Black Shotgunner troop"
  States
  {
  Spawn:
    ZSP1 AAAAAAAAAABBBBBBBBBB 1 A_Look
    Loop

  //Switching
  See:
    
    
    ZSP1 A 0 A_TakeInventory("ZSpecOpAggressive", 1)
    ZSP1 A 0 A_TakeInventory("ZSpecOpSprint", 1)
    ZSP1 A 0 A_TakeInventory("ZSpecOpWander", 1)
    ZSP1 A 0 A_TakeInventory("ZSpecOpCreep", 1)
    ZSP1 A 0 A_TakeInventory("ZSpecOpBerserk", 1)
    ZSP1 A 0 A_ChangeFlag("MissileMore", 0)
    ZSP1 A 0 A_ChangeFlag("MissileEvenMore", 0)
    ZSP1 A 0 A_ChangeFlag("AvoidMelee", 0)
    ZSP1 A 0 A_ChangeFlag("NoPain", 0)
    ZSP1 A 0 A_GiveInventory("ZSpecOpsSGSitRep", 1)
    ZSP1 A 0 A_JumpIfInventory("ZSpecOpAggressive", 1, "AggressiveSwitch")
    ZSP1 A 0 A_JumpIfInventory("ZSpecOpSprint", 1, "SprintSwitch")
    ZSP1 A 0 A_JumpIfInventory("ZSpecOpWander", 1, "WanderSwitch")
    ZSP1 A 0 A_JumpIfInventory("ZSpecOpCreep", 1, "CreepSwitch")
    ZSP1 A 0 A_JumpIfInventory("ZSpecOpBerserk", 1, "BerserkSwitch")
    ZPS1 A 0 A_JumpIfMasterCloser(1000,"See")
	ZPS1 A 0 A_Warp(AAptr_MASTER, 5,1,6,0,WARPF_NOCHECKPOSITION)
  //Aggressive Mode
  AggressiveSwitch:
    ZSP1 A 0 A_ChangeFlag("MissileMore", 1)
    ZSP1 A 0 A_ChangeFlag("MissileEvenMore", 1)
    Goto AggressiveSee
	
	
								Pain.AbyssPE:
		TNT1 A 0
		TNT1 A 0 A_changeflag("Nopain",true)
	TNT1 A 0 A_setscale(0.8,0.8)
	AYPB AAB 5 bright
	AYPB B 5 bright a_playsound("AbyssForm",0)
	AYPB BBA 5 bright
	AYPB CDE 5 bright
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnitemEx("SplashAbyss",random(-16,16),random(-16,16),random(4,32),16,0,3,random(-359,359),SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnitemEx("SplashAbyss",random(-16,16),random(-16,16),random(4,32),12,0,8,random(-359,359),SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)

	TNT1 A 0 A_SpawnitemEx("AbyssSG2",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
	AYPB FGH 3 bright
	AYPB I 5 bright a_setscale(1,0.75)
	AYPB H 5 bright a_setscale(1,0.5)
	AYPB I 5 bright a_setscale(1,0.25)
	AYPB H 5 bright a_setscale(1,0.05)
	Stop
	
	
  AggressiveSee:
    ZSP1 A 3 A_Chase("", "AggressiveMissile")
    ZSP1 A 0 A_Jump(192, 2)
    ZSP1 A 0 A_JumpIfHealthLower(50, "See")
    ZSP1 A 0 A_Jump(32, 2)
    ZSP1 A 0 A_JumpIfCloser(768, 1)
	ZPS1 A 0 A_JumpIfMasterCloser(1000,"See")
	ZPS1 A 0 A_Warp(AAptr_MASTER, 5,1,6,0,WARPF_NOCHECKPOSITION)
    Goto See
    ZSP1 A 3 A_Chase("", "AggressiveMissile")
    ZSP1 A 0 A_Jump(192, 2)
    ZSP1 A 0 A_JumpIfHealthLower(50, "See")
    ZSP1 A 0 A_Jump(32, 2)
    ZSP1 A 0 A_JumpIfCloser(768, 1)
	ZPS1 A 0 A_JumpIfMasterCloser(1000,"See")
	ZPS1 A 0 A_Warp(AAptr_MASTER, 5,1,6,0,WARPF_NOCHECKPOSITION)
    Goto See
    ZSP1 B 3 A_Chase("", "AggressiveMissile")
    ZSP1 B 0 A_Jump(192, 2)
    ZSP1 B 0 A_JumpIfHealthLower(50, "See")
    ZSP1 B 0 A_Jump(32, 2)
    ZSP1 B 0 A_JumpIfCloser(768, 1)
    Goto See
    ZSP1 B 3 A_Chase("", "AggressiveMissile")
    ZSP1 B 0 A_Jump(192, 2)
    ZSP1 B 0 A_JumpIfHealthLower(50, "See")
    ZSP1 B 0 A_Jump(32, 2)
    ZSP1 B 0 A_JumpIfCloser(768, 1)
	ZPS1 A 0 A_JumpIfMasterCloser(1000,"See")
	ZPS1 A 0 A_Warp(AAptr_MASTER, 5,1,6,0,WARPF_NOCHECKPOSITION)
    Goto See
    ZSP1 C 3 A_Chase("", "AggressiveMissile")
    ZSP1 C 0 A_Jump(192, 2)
    ZSP1 C 0 A_JumpIfHealthLower(50, "See")
    ZSP1 C 0 A_Jump(32, 2)
    ZSP1 C 0 A_JumpIfCloser(768, 1)
    Goto See
    ZSP1 C 3 A_Chase("", "AggressiveMissile")
    ZSP1 C 0 A_Jump(192, 2)
    ZSP1 C 0 A_JumpIfHealthLower(50, "See")
    ZSP1 C 0 A_Jump(32, 2)
    ZSP1 C 0 A_JumpIfCloser(768, 1)
    Goto See
    ZSP1 D 3 A_Chase("", "AggressiveMissile")
    ZSP1 D 0 A_Jump(192, 2)
    ZSP1 D 0 A_JumpIfHealthLower(50, "See")
    ZSP1 D 0 A_Jump(32, 2)
    ZSP1 D 0 A_JumpIfCloser(768, 1)
    Goto See
    ZSP1 D 3 A_Chase("", "AggressiveMissile")
    ZSP1 D 0 A_Jump(192, 2)
    ZSP1 D 0 A_JumpIfHealthLower(50, "See")
    ZSP1 D 0 A_Jump(32, 2)
    ZSP1 D 0 A_JumpIfCloser(768, 1)
    Goto See
    ZSP1 A 0
    Loop
  AggressiveMissile:
    ZSP1 EEE 4 A_FaceTarget
    ZSP1 F 0 Bright A_PlayWeaponSound("Weapons/ShotGF")
    ZSP1 F 2 Bright A_CustomBulletAttack(8, 6, 7, 4, "DetoPuffCG")
	ZSP1 F 0 bright A_Jump(64,"NadeToss")
    ZSP1 EEE 2 A_FaceTarget
    Goto AggressiveSee
  Nadetoss:
    ZSP1 E 8 A_Facetarget
	ZSP1 E 2 A_Playsound("fire/fire4")
	ZSP1 E 2 A_Custommissile("SGGasNade",48,0,random(-3,3),0,random(3,12))
	ZSP1 E 2
	Goto AggressiveSee
  //Sprint Mode
  SprintSwitch:
    ZSP1 A 0 A_ChangeFlag("NoPain", 1)
    Goto SprintSee
  SprintSee:
    ZSP1 A 2 A_Chase("", "")
    ZSP1 A 0 A_JumpIfCloser(384, "See")
    ZSP1 A 2 A_Chase("", "")
    ZSP1 A 0 A_JumpIfCloser(384, "See")
    ZSP1 B 2 A_Chase("", "")
    ZSP1 B 0 A_JumpIfCloser(384, "See")
    ZSP1 B 2 A_Chase("", "")
    ZSP1 B 0 A_JumpIfCloser(384, "See")
    ZSP1 C 2 A_Chase("", "")
    ZSP1 C 0 A_JumpIfCloser(384, "See")
    ZSP1 C 2 A_Chase("", "")
    ZSP1 C 0 A_JumpIfCloser(384, "See")
    ZSP1 D 2 A_Chase("", "")
    ZSP1 D 0 A_JumpIfCloser(384, "See")
    ZSP1 D 2 A_Chase("", "")
    ZSP1 D 0 A_JumpIfCloser(384, "See")
    Loop

  //Wander Mode
  WanderSwitch:
    ZSP1 A 0 A_ClearTarget
    Goto WanderSee
  WanderSee:
    ZSP1 A 4 A_Wander
    ZSP1 A 0 A_LookEx(10, 0, 0, 0, 360, "See")
    ZSP1 A 4 A_Wander
    ZSP1 A 0 A_LookEx(10, 0, 0, 0, 360, "See")
    ZSP1 B 4 A_Wander
    ZSP1 A 0 A_LookEx(10, 0, 0, 0, 360, "See")
    ZSP1 B 4 A_Wander
    ZSP1 A 0 A_LookEx(10, 0, 0, 0, 360, "See")
    ZSP1 C 4 A_Wander
    ZSP1 A 0 A_LookEx(10, 0, 0, 0, 360, "See")
    ZSP1 C 4 A_Wander
    ZSP1 A 0 A_LookEx(10, 0, 0, 0, 360, "See")
    ZSP1 D 4 A_Wander
    ZSP1 A 0 A_LookEx(10, 0, 0, 0, 360, "See")
    ZSP1 D 4 A_Wander
    ZSP1 A 0 A_LookEx(10, 0, 0, 0, 360, "See")
    Loop

  //Creep Mode
  CreepSwitch:
    ZSP1 A 0 A_ChangeFlag("MissileMore", 1)
    ZSP1 A 0 A_ChangeFlag("AvoidMelee", 1)
    Goto CreepSee
  CreepSee:
    ZSP1 A 0 A_CheckSight("CreepCheck")
    ZSP1 A 0 A_JumpIfHealthLower(50, "See")
    ZSP1 AABBCCDD 5 A_Chase("", "CreepMissile", 2)
    Loop
  CreepCheck:
    ZSP1 A 0 A_Jump(32, "See")
    Goto CreepSee+1
  CreepMissile:
    ZSP1 EEE 4 A_FaceTarget
    ZSP1 F 0 Bright A_PlayWeaponSound("Weapons/ShotGF")
    ZSP1 F 2 Bright A_CustomBulletAttack(8, 6, 7, 4, "DetoPuffCG")
    ZSP1 EEE 2 A_FaceTarget
    Goto CreepSee

  //Berserk Mode
  BerserkSwitch:
    ZSP1 A 0 A_ChangeFlag("MissileMore", 1)
    ZSP1 A 0 A_ChangeFlag("MissileEvenMore", 1)
    ZSP1 A 0 A_ChangeFlag("NoPain", 1)
    Goto BerserkSee
  BerserkSee:
    ZSP1 AABBCCDD 3 A_Chase("", "BerserkMissile")
    ZSP1 A 0 A_JumpIfCloser(768, 1)
    Goto See
    ZSP1 A 0
    Loop
  BerserkMissile:
    ZSP1 EE 4 A_FaceTarget
    ZSP1 F 0 Bright A_PlayWeaponSound("Weapons/ShotGF")
    ZSP1 F 2 Bright A_CustomBulletAttack(8, 6, 7, 4, "DetoPuffCG")
    ZSP1 EEE 2 A_FaceTarget
    ZSP1 F 0 A_Jump(192, "BerserkSee")
    ZSP1 F 0 A_MonsterRefire(40, "BerserkSee")
    Loop

  //Misc hurting states
  Pain:
    ZSP1 G 4
    ZSP1 G 4 A_Pain
    ZSP1 G 0 A_Jump(96, "See")
    Goto WhatPainState
  WhatPainState:
    ZSP1 G 0 A_JumpIfInventory("ZSpecOpAggressive", 1, "AggressiveSee")
    ZSP1 G 0 A_JumpIfInventory("ZSpecOpSprint", 1, "SprintSee")
    ZSP1 G 0 A_JumpIfInventory("ZSpecOpWander", 1, "WanderSee")
    ZSP1 G 0 A_JumpIfInventory("ZSpecOpCreep", 1, "CreepSee")
    ZSP1 G 0 A_JumpIfInventory("ZSpecOpBerserk", 1, "BerserkSee")
    Goto AggressiveSee
  Death:
    ZSP1 H 5
    ZSP1 I 5 A_Scream
    ZSP1 J 5
    ZSP1 K 5 A_NoBlocking
    ZSP1 L -1
  Raise:
    ZSP1 LKJIH 5
    Goto See
  }
}

Actor ZSpecOpsSGSitRep : CustomInventory
{
  Inventory.MaxAmount 0
  +Inventory.AutoActivate
  States
  {
  Spawn:
    TNT1 A 1
    Fail

  Use:
    TNT1 A 0 A_JumpIfHealthLower(50, "LowHealth")
    TNT1 A 0 A_CheckSight("OutOfSight")
    TNT1 A 0 A_JumpIfCloser(384, "Close")
  ChecksFailed:
    TNT1 A 0 A_Jump(256, "AggressiveMode", "SprintMode")

  LowHealth:
    TNT1 A 0 A_CheckSight("LowHealthOutOfSight")
    TNT1 A 0 A_JumpIfCloser(768, "LowHealthClose")
    TNT1 A 0 A_Jump(256, "SprintMode", "BerserkMode")
  LowHealthOutOfSight:
    TNT1 A 0 A_JumpIfCloser(768, "LowHealthOutOfSightClose")
    TNT1 A 0 A_Jump(256, "SprintMode", "CreepMode")
  LowHealthOutOfSightClose:
    TNT1 A 0 A_Jump(256, "CreepMode", "AggressiveMode", "BerserkMode")
  LowHealthClose:
    TNT1 A 0 A_Jump(256, "BerserkMode", "AggressiveMode")

  OutOfSight:
    TNT1 A 0 A_JumpIfCloser(384, "OutOfSightClose")
    TNT1 A 0 A_Jump(256, "AggressiveMode", "WanderMode", "CreepMode")
  OutOfSightClose:
    TNT1 A 0 A_Jump(256, "AggressiveMode", "CreepMode")

  Close:
    TNT1 A 0 A_Jump(256, "AggressiveMode")

  AggressiveMode:
    TNT1 A 0 A_GiveInventory("ZSpecOpAggressive", 1)
    Stop
  SprintMode:
    TNT1 A 0 A_GiveInventory("ZSpecOpSprint", 1)
    Stop
  WanderMode:
    TNT1 A 0 A_GiveInventory("ZSpecOpWander", 1)
    Stop
  CreepMode:
    TNT1 A 0 A_GiveInventory("ZSpecOpCreep", 1)
    Stop
  BerserkMode:
    TNT1 A 0 A_GiveInventory("ZSpecOpBerserk", 1)
    Stop
  }
}

Actor ZSpecOpAggressive : Inventory { Inventory.MaxAmount 1 }
Actor ZSpecOpSprint : Inventory { Inventory.MaxAmount 1 }
Actor ZSpecOpWander : Inventory { Inventory.MaxAmount 1 }
Actor ZSpecOpCreep : Inventory { Inventory.MaxAmount 1 }
Actor ZSpecOpBerserk : Inventory { Inventory.MaxAmount 1 }

Actor WhiteSG
{
states
{
Spawn:
TNT1 A 0
Goto Scripted
Scripted:
TNT1 A 0 A_JumpIf(CallACS("CH_WhiteBossy") == 1, "First") 
TNT1 A 0
Goto Third
First:
TNT1 A 0
TNT1 A 0 A_JumpIf(CallACS("CH_ExBoss") == 1, "EX1") 
TNT1 A 0 A_JumpIf(CallACS("CH_ExBoss") == 2, "EX2") 
TNT1 A 0 A_JumpIf(CallACS("CH_ExBoss") == 3, "EX3") 

TNT1 A 0 A_SpawnitemEx("WhiteSG2",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
stop
Third:
TNT1 A 0 A_SpawnitemEx("BlackSG",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
stop


EX1No:
TNT1 A 0
TNT1 A 0 A_SpawnitemEx("WhiteSG2",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
stop

EX3:
TNT1 A 0
TNT1 A 0 A_SpawnitemEx("WhiteSGEX",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
stop

EX2:
TNT1 A 0
TNT1 A 0 A_jump(128,"EX1No")
TNT1 A 0 A_SpawnitemEx("WhiteSGEX",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
stop

EX1:
TNT1 A 0
TNT1 A 0 A_jump(232,"EX1No")
TNT1 A 0 A_SpawnitemEx("WhiteSGEX",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERSPECIAL|SXF_TRANSFERAMBUSHFLAG)
stop

}
}


////
Actor WhiteSG2
{
  MONSTER
  +NOGRAVITY
  +FLOAT
  +FLOATBOB
  +dontmorph 
  +BOSSDEATH
  +SEEINVISIBLE
  +NOBLOOD
  +NOFEAR
  +LOOKALLAROUND
  +Missilemore
  +Missileevenmore
  +boss
  -NORADIUSDMG
  Health 5000
  Damagefactor None, 0.5
  DamageFactor Fire, 1.0
  DamageFactor "Plasma", 0.8
  DamageFactor Melee, 1.5
  DamageFactor "Heroic", 3.0
  DamageFactor "DIMp", 0
  Radius 20
  PainChance 8
  Height 56
  Mass 400
  Speed 28
  FloatSpeed 28
  SeeSound "weapons/sshotl"
  ActiveSound "weapons/sshotf"
  PainSound "weapons/sshotf"
  DeathSound "weapons/sshotf"
  AttackSound "shotguy/attack"
  DropItem "SGBurst", 255, 8
  DropItem "InvulnerabilitySphere"
  DropItem "CH_Shell"
   DropItem "CH_Shell"
    DropItem "CH_Shell"
	 DropItem "CH_Shell"
	  DropItem "CH_Shell"
	   DropItem "CH_Shell"
	    DropItem "Shell"
		 DropItem "Shell"
		  DropItem "Shell"
		   DropItem "Shell"
		    DropItem "Shell"
    Dropitem "RareArmorPool", 128
  Dropitem "RLDemonicWeaponSpawner",12
  Dropitem "RLLegendaryWeaponSpawner", 8
  Dropitem "RLUniqueWeaponSpawner",24
  DropItem "SuperShotgun"
   DropItem "CH_SuperShotgun"
    DropItem "CH_SuperShotgun"
	 DropItem "CH_SuperShotgun"
	  DropItem "CH_SuperShotgun"
  Dropitem "RLQuadShotgunPickup", 88
 // Dropitem "RLJudgeOfTheDeadPickup", 64
  Dropitem "RLSteelBeastPickup", 72
  OBITUARY "%o never even had a chance against Benellus, God of Shotguns"
  Tag "BENELLUS, GOD OF SHOTGUNS"
  var int user_Easter;
  States
  {
  	Spawn:
	    BENE A 1
		Goto Scripted
	Scripted:
	    BENE A 1
		BENE A 1 ACS_NamedExecuteAlways("AnnounceWhiteSG")
		BENE A 1
		Goto Idle
	Idle:
		BENE ABCD 5 A_Look
										 	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH11",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

		Loop
	See:
	   BENE ABCD 2 A_Chase
	   										 	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH11",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	   BENE A 0 A_Jump(128, "See2")
	   Loop
    See2:
	   BENE ABCD 2 A_FastChase
	   										 	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH11",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	   BENE A 0 A_Jump(128, "See2")
	   Loop
	 Pain:
	   BENE D 4
	   										 	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH11",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	   BENE D 5 A_Pain
	   BENE D 2 A_Jump(128,"Gifts")
	   Goto See2
	 Missile:  

	   BENE A 0 A_jumpifinventory("LDLegendaryMonsterTransformed",1,"Easter")
	   	 										 	TNT1 AA 0 A_SpawnitemEx("ColorTierIconCH11",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	   BENE A 0 A_Jump(256,"SG","Gifts","Punisher")
	   Goto See
	   Easter:
	   BENE A 0 A_jumpif(user_Easter>=1,"EasterIsOver")
	   BENE A 0 A_PlaySound("Bene/Song",7, 2, false, ATTN_NONE)
	   BENE A 0 A_SetUserVar("User_Easter",User_Easter+1)
	   Goto Missile+1
	   EasterIsOver:
	   BENE A 0 
	   Goto Missile+1
	   Gifts:
	   BENE A 8 bright a_playsound("DSDBLOAD",0,2,false,ATTN_NONE)
	   BENE A 8 bright a_playsound("DSDBCLS",0,2,false,ATTN_NONE)
	   BENE ABCD 1 Bright A_CustomMissile("MineShotgun",random(20,60),random(-15,15),random(-20,20),0)
	   Goto See
	   
	   Punisher:
	   
	   
	   BENE A 10 bright a_playsound("DSDSHTGN",7,2,false,ATTN_NONE)
	   BENE A 8 bright
	     BENE K 2 bright A_viletarget("ShotgunpunisherNerfed")
	   Goto see
	   
	   SG:
	   BENE A 2 A_FaceTarget
	   BENE AAA 7 bright a_playsound("DSSGCOCK",0,2,false,ATTN_NONE)
	   
	   BENE KBJCGDF 6 Bright  A_CustomBulletAttack(random(5,180), random(0,50), random(5,30), random(1,3), "BulletPuff", 0)
	   BENE K 0 Bright A_CheckSight("See")
	   BENE K 0 Bright A_CheckRange(1250,"See")
	   BENE KB 2 Bright A_CustomBulletAttack(22.5, 0, random(5,18), random(1,5), "BulletPuff", 0)
	   BENE EAHBICLD 6 Bright  A_CustomBulletAttack(random(5,180), random(0,50), random(5,30), random(1,3), "BulletPuff", 0)
	   BENE A 1  A_Monsterrefire(128,"See")
	   Goto SG
	 Death:
	   BENE AAAAAA 1 A_Scream
	   BENE A 8 A_Fall
	   BENE AAABCDDDD 6 A_CustomMissile ("HKRedDeath",random(0,80),random(-30,50), CMF_AIMOFFSET, 2, -10)
	   BENE DDDDDDDDDDDDDDDDDDDD  1 A_SpawnitemEx("Shotgun",random(-80,80),random(-80,80),random(-80,80),random(-80,80),random(-80,80),random(-80,80),random(-80,80))
	   BENE D 8 Radius_Quake(40,60,0,40,0)
	   BENE DDDDDDDDDDDDDDDDDDDD  1 A_SpawnitemEx("Shotgun",random(-80,80),random(-80,80),random(-80,80),random(-80,80),random(-80,80),random(-80,80),random(-80,80))
	   BENE D 6 A_SetTranslucent(0.75)
	   BENE D 6 A_SetTranslucent(0.5)
	   BENE D 6 A_SetTranslucent(0.25)
	   	 TNT1 A 0 A_SpawnItemEx ("CH_Cactus", 0,0,24, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM| SXF_NOCHECKPOSITION,232)
	   Stop
	   
		}
}

ACTOR MineShotgun
{
   Radius 12
   Height 12
   Speed 20
   Damage (random(10,50))
   RENDERSTYLE soultrans
   ALPHA 0.95
   PROJECTILE
   DamageType Fire
   -NOGRAVITY
   +BounceOnWalls
   +THRUGHOST
   Gravity 0.9
   BounceType Doom
   BounceCount 11
   BounceFactor 0.75
   WallBounceFactor 1.2
   SeeSound "weapons/sshotl"
   Bouncesound "weapons/sshotl"
   DeathSound "weapons/rockx"
   States
   {
   Spawn:
      SHOT A 1 Bright A_SetScale(1.15) 
      SHOT A 1 Bright A_SetScale(1.3)  
	  SHOT A 0 Bright A_Jump(6,"Death")
	  SHOT A 0 Bright A_Jump(32,"Bounce")
	  SHOT A 1 Bright A_SetScale(1.15) 
	  SHOT A 1 Bright A_SetScale(1) 
	  SHOT A 0
      loop
   Bounce:
      SHOT A 2  Bright ThrustThing(angle*256/(random(1,360)), 15, 0, 0)
	  Goto Spawn
   Death:
      MISL BCD 5 Bright A_Explode(random(5,50),128)
	  Stop
	  }
}

Actor SGBurst
{
Game Doom
Mass 5
Alpha 0.01
Speed 18
States
  {
Spawn:
TNT1 A 1
Goto Death
Death:
TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAA  1 A_SpawnitemEx("Shotgun",random(-80,80),random(-80,80),random(-80,80),random(-80,80),random(-80,80),random(-80,80),random(-80,80))
TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAA  1 A_SpawnitemEx("Shotgun",random(-80,80),random(-80,80),random(-80,80),random(-80,80),random(-80,80),random(-80,80),random(-80,80))
TNT1 A 1 A_Burst("Shotgun")
Stop
}
}


Actor WhiteSGEX
{
  MONSTER
  +NOGRAVITY
  +FLOAT
  +FLOATBOB
  +BOSSDEATH
  +SEEINVISIBLE
  +NOBLOOD
  +dontmorph 
  +NOFEAR
  +notimefreeze
  +LOOKALLAROUND
  +Missilemore
  +Missileevenmore
  +thruspecies
  +boss
  -NORADIUSDMG
  Health 12537
  Damagefactor None, 0.5
  DamageFactor Fire, 1.0
  DamageFactor "Plasma", 0.7
  DamageFactor Melee, 1.2
    DamageFactor "PlayerVoid", 0.5
  DamageFactor "Heroic", 3.0
  DamageFactor "DIMp", 0
  Species "BENE"
  Radius 20
  PainChance 14
  Height 56
  Mass 400
  Speed 31
  FloatSpeed 31
  scale 1.25
  SeeSound "weapons/sshotl"
  ActiveSound "weapons/sshotf"
  PainSound "weapons/sshotf"
  DeathSound "weapons/sshotf"
  AttackSound "shotguy/attack"
  DropItem "SGBurst", 255, 8
  DropItem "InvulnerabilitySphere"
  DropItem "Shell"
  DropItem "Shell"
  DropItem "Shell"
  DropItem "Shell"
  DropItem "CH_Shell"
  DropItem "CH_Shell"
  DropItem "CH_Shell"
  DropItem "CH_Shell"
    Dropitem "RareArmorPool"
  Dropitem "RLDemonicWeaponSpawner",24
  Dropitem "RLLegendaryWeaponSpawner", 12
  Dropitem "RLUniqueWeaponSpawner",32
  DropItem "CH_SuperShotgun"
  DropItem "CH_SuperShotgun"
  DropItem "CH_SuperShotgun"
  DropItem "SuperShotgun"
  DropItem "SuperShotgun"
  Dropitem "RLQuadShotgunPickup", 128
  //Dropitem "RLJudgeOfTheDeadPickup", 76
  Dropitem "RLSteelBeastPickup", 128
  OBITUARY "%o never even had a chance against more seriously fighting Benellus, God of Shotguns"
  Tag "BENELLUS, GOD OF SHOTGUNS, ANGRIER"
  var int user_Easter;
  States
  {
  	Spawn:
	    BENE A 1
		Goto Scripted
	Scripted:
	    BENE A 1
		BENE A 1 ACS_NamedExecuteAlways("AnnounceWhiteSG")
		BENE A 1 a_log("A chill runs down your spine")
		Goto Idle
	Idle:
		BENE ABCD 5 A_Look
												 	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH11",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

		Loop
	See:
	   BENE AB 2 A_Chase 
	   										 	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH11",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	 TNT1 AAAAA 0  A_CustomMissile("SparkPuff1",42,0,random(0,360),CMF_AIMOFFSET, random(-150,150))
BENE CD 2 A_Chase 
	 TNT1 AAAAA 0  A_CustomMissile("SparkPuff1",42,0,random(0,360),CMF_AIMOFFSET, random(-150,150))
										 	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH11",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	   BENE A 0 A_Jump(128, "See2")
	   Loop
    See2:
	   BENE ABCD 2 A_FastChase
	   										 	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH11",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	   BENE A 0 A_Jump(128, "See2")
	   Loop
	 Pain:
	   BENE D 2 A_SpawnitemEx("Shell",random(-80,80),random(-80,80),random(-80,80),random(-80,80),random(-80,80),random(-80,80),random(-80,80))
BENE D 2  A_SpawnitemEx("ShotgunShrine",random(-128,128),random(-128,128),0,0,0,0,0,SXF_NOCHECKPOSITION, 176)
										 	TNT1 AA 0 A_SpawnitemEx("ColorTierIconCH11",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	   
	   BENE D 2 A_Pain
	   BENE D 2 A_Jump(128,"Tele")
	   Goto See2
	   
	   Tele:
	   
	   BENE DDDD 1 A_wander 
	   
	   Goto see2
	   
	 Missile:  

	   BENE A 0 A_jumpifinventory("LDLegendaryMonsterTransformed",1,"Easter")
	   	 										 	TNT1 A 0 A_SpawnitemEx("ColorTierIconCH11",0,0,32,random(1,4),0,random(0,2),random(0,359),SXF_NOCHECKPOSITION)

	   BENE A 0 A_jumpIfCloser(1500,"OtherM")
	   BENE A 0 
	   BENE A 0 A_Jump(128,"FocusedHitScan")
	   
	   
	   
	   
	   ShotgunRounded:
	   BENE ABCD 2 
	   BENE AAAAAAAAAAAAAAAAAAAA 1 bright A_CustomMissile("SparkPuff1",42,0,random(0,360),CMF_AIMOFFSET, random(-150,150))
	  TNT1 AAAAAAAAA 0  A_CustomMissile("SparkPuff1",42,0,random(0,360),CMF_AIMOFFSET, random(-150,150))

	   BENE K 2 bright a_jump(64,"Shrines")
	   BENE K 2 bright A_viletarget("Shotgunpunisher")
	   BENE D 3  A_SpawnitemEx("ShotgunShrine",random(-128,128),random(-1,178),0,0,0,0,0,SXF_NOCHECKPOSITION)
	   BENE D 3  A_SpawnitemEx("ShotgunShrine",random(-128,128),random(-178,1),0,0,0,0,0,SXF_NOCHECKPOSITION)

	   
	  
	   Goto See
	   
	   shrines:
	   	   BENE K 2 bright A_viletarget("Shotgunpunisher2")
	   BENE D 3  A_SpawnitemEx("ShotgunShrine",random(-128,128),random(-1,178),0,0,0,0,0,SXF_NOCHECKPOSITION)
	   BENE D 3  A_SpawnitemEx("ShotgunShrine",random(-128,128),random(-178,1),0,0,0,0,0,SXF_NOCHECKPOSITION)

	   Goto see
	   FocusedHitScan:
	   
	   BENE A 1 bright A_FaceTarget
	   TNT1 AAAAA 0  A_CustomMissile("SparkPuff1",42,0,random(0,360),CMF_AIMOFFSET, random(-150,150))
	   BENE AAAAAA 1 bright A_CustomMissile("SparkPuff1",42,0,random(0,360),CMF_AIMOFFSET, random(-150,150))
       BENE A 8 bright A_FaceTarget
	   BENE KBJCGDF 5 Bright  A_CustomBulletAttack(1, 1, random(5,20), random(1,6), "BulletPuff", 0)
	   
	   BENE KD 3
	   Goto see
	   
	   
	   FocusedFire:
	   
	   BENE AAAAAA 1 bright A_CustomMissile("SparkPuff1",42,0,random(0,360),CMF_AIMOFFSET, random(-150,150))
	   BENE A 0 A_SpawnitemEx("SparkShieldBen",62,62,62,0,0,0,0,SXF_NOCHECKPOSITION)
       BENE A 0 A_SpawnitemEx("SparkShieldBen",-62,62,62,0,0,0,0,SXF_NOCHECKPOSITION)
	   BENE A 0 A_SpawnitemEx("SparkShieldBen",62,-62,62,0,0,0,0,SXF_NOCHECKPOSITION)
	   BENE A 0 A_SpawnitemEx("SparkShieldBen",-62,-62,62,0,0,0,0,SXF_NOCHECKPOSITION)
	   	   BENE A 0 A_SpawnitemEx("SparkShieldBen",62,62,-22,0,0,0,0,SXF_NOCHECKPOSITION)
       BENE A 0 A_SpawnitemEx("SparkShieldBen",-62,62,-22,0,0,0,0,SXF_NOCHECKPOSITION)
	   BENE A 0 A_SpawnitemEx("SparkShieldBen",62,-62,-22,0,0,0,0,SXF_NOCHECKPOSITION)
	   BENE A 0 A_SpawnitemEx("SparkShieldBen",-62,-62,-22,0,0,0,0,SXF_NOCHECKPOSITION)
	   
	   
	   	   BENE A 0 A_SpawnitemEx("SparkShieldBen",31,62,62,0,0,0,0,SXF_NOCHECKPOSITION)
       BENE A 0 A_SpawnitemEx("SparkShieldBen",-31,62,62,0,0,0,0,SXF_NOCHECKPOSITION)
	   BENE A 0 A_SpawnitemEx("SparkShieldBen",31,-62,62,0,0,0,0,SXF_NOCHECKPOSITION)
	   BENE A 0 A_SpawnitemEx("SparkShieldBen",-31,-62,62,0,0,0,0,SXF_NOCHECKPOSITION)
	   	   BENE A 0 A_SpawnitemEx("SparkShieldBen",62,31,-22,0,0,0,0,SXF_NOCHECKPOSITION)
       BENE A 0 A_SpawnitemEx("SparkShieldBen",-62,31,-22,0,0,0,0,SXF_NOCHECKPOSITION)
	   BENE A 0 A_SpawnitemEx("SparkShieldBen",62,-31,-22,0,0,0,0,SXF_NOCHECKPOSITION)
	   BENE A 0 A_SpawnitemEx("SparkShieldBen",-62,-31,-22,0,0,0,0,SXF_NOCHECKPOSITION)
	   
	   
	   
	   	   BENE A 0 A_SpawnitemEx("SparkShieldBen",75,75,42,0,0,0,0,SXF_NOCHECKPOSITION)
       BENE A 0 A_SpawnitemEx("SparkShieldBen",-75,75,42,0,0,0,0,SXF_NOCHECKPOSITION)
	   BENE A 0 A_SpawnitemEx("SparkShieldBen",75,-75,42,0,0,0,0,SXF_NOCHECKPOSITION)
	   BENE A 0 A_SpawnitemEx("SparkShieldBen",-75,-75,42,0,0,0,0,SXF_NOCHECKPOSITION)
	   
	   	   BENE A 0 A_SpawnitemEx("SparkShieldBen",75,75,-2,0,0,0,0,SXF_NOCHECKPOSITION)
       BENE A 0 A_SpawnitemEx("SparkShieldBen",-75,75,-2,0,0,0,0,SXF_NOCHECKPOSITION)
	   BENE A 0 A_SpawnitemEx("SparkShieldBen",75,-75,-2,0,0,0,0,SXF_NOCHECKPOSITION)
	   BENE A 0 A_SpawnitemEx("SparkShieldBen",-75,-75,-2,0,0,0,0,SXF_NOCHECKPOSITION)
	   
	   
	   	   	   BENE A 0 A_SpawnitemEx("SparkShieldBen",32,75,42,0,0,0,0,SXF_NOCHECKPOSITION)
       BENE A 0 A_SpawnitemEx("SparkShieldBen",-32,75,42,0,0,0,0,SXF_NOCHECKPOSITION)
	   BENE A 0 A_SpawnitemEx("SparkShieldBen",32,-75,42,0,0,0,0,SXF_NOCHECKPOSITION)
	   BENE A 0 A_SpawnitemEx("SparkShieldBen",-32,-75,42,0,0,0,0,SXF_NOCHECKPOSITION)
	   
	   	   BENE A 0 A_SpawnitemEx("SparkShieldBen",75,32,-2,0,0,0,0,SXF_NOCHECKPOSITION)
       BENE A 0 A_SpawnitemEx("SparkShieldBen",-75,32,-2,0,0,0,0,SXF_NOCHECKPOSITION)
	   BENE A 0 A_SpawnitemEx("SparkShieldBen",75,-32,-2,0,0,0,0,SXF_NOCHECKPOSITION)
	   BENE A 0 A_SpawnitemEx("SparkShieldBen",-75,-32,-2,0,0,0,0,SXF_NOCHECKPOSITION)
	   
	   	   	   BENE A 0 A_SpawnitemEx("SparkShieldBen",62,62,20,0,0,0,0,SXF_NOCHECKPOSITION)
       BENE A 0 A_SpawnitemEx("SparkShieldBen",-62,62,20,0,0,0,0,SXF_NOCHECKPOSITION)
	   BENE A 0 A_SpawnitemEx("SparkShieldBen",62,-62,20,0,0,0,0,SXF_NOCHECKPOSITION)
	   BENE A 0 A_SpawnitemEx("SparkShieldBen",-62,-62,20,0,0,0,0,SXF_NOCHECKPOSITION)
	   	   	   	   BENE A 0 A_SpawnitemEx("SparkShieldBen",32,62,20,0,0,0,0,SXF_NOCHECKPOSITION)
       BENE A 0 A_SpawnitemEx("SparkShieldBen",-32,62,20,0,0,0,0,SXF_NOCHECKPOSITION)
	   BENE A 0 A_SpawnitemEx("SparkShieldBen",32,-62,20,0,0,0,0,SXF_NOCHECKPOSITION)
	   BENE A 0 A_SpawnitemEx("SparkShieldBen",-32,-62,20,0,0,0,0,SXF_NOCHECKPOSITION)
	   
	   	   	   	   BENE A 0 A_SpawnitemEx("SparkShieldBen",62,32,20,0,0,0,0,SXF_NOCHECKPOSITION)
       BENE A 0 A_SpawnitemEx("SparkShieldBen",-62,32,20,0,0,0,0,SXF_NOCHECKPOSITION)
	   BENE A 0 A_SpawnitemEx("SparkShieldBen",62,-32,20,0,0,0,0,SXF_NOCHECKPOSITION)
	   BENE A 0 A_SpawnitemEx("SparkShieldBen",-62,-32,20,0,0,0,0,SXF_NOCHECKPOSITION)
	   
	   BENE A 6 bright A_facetarget
	   BENE KBJCGDF 1 Bright A_CustomMissile("SparkFireBen",52,0,random(-1,1),CMF_ABSOLUTEPITCH,random(1,5))
	     BENE KBJCGDF 1 Bright A_CustomMissile("SparkFireBen",52,0,random(-8,8),CMF_ABSOLUTEPITCH,random(-9,8))
		 	     BENE KBJCGDF 1 Bright A_CustomMissile("SparkFireBen",52,0,random(-12,12))
    	 BENE KBJCGDF 1 Bright A_CustomMissile("SparkFireBen",52,0,random(-5,5),CMF_AIMOFFSET,random(3,9))
	   BENE KBJCGDF 1 Bright A_CustomMissile("SparkFireBen",52,0,random(-1,1),CMF_AIMOFFSET,random(1,4))
	     BENE KBJCGDF 1 Bright A_CustomMissile("SparkFireBen",52,0,random(-12,12))
		BENE KBJCGDF 1 Bright A_CustomMissile("SparkFireBen",52,0,random(-8,8),CMF_ABSOLUTEPITCH,random(-9,4))
    	 BENE KBJCGDF 1 Bright A_CustomMissile("SparkFireBen",52,0,random(-5,5),CMF_AIMOFFSET,random(-3,3))

		   BENE A 6 bright A_facetarget
	   BENE KBJCGDF 1 Bright A_CustomMissile("SparkFireBen",52,0,random(-1,1),CMF_AIMOFFSET,random(-3,5))
	     BENE KBJCGDF 1 Bright A_CustomMissile("SparkFireBen",52,0,random(-8,8),CMF_ABSOLUTEPITCH,random(-9,8))
    	  BENE KBJCGDF 1 Bright A_CustomMissile("SparkFireBen",52,0,random(-12,12))
		 BENE KBJCGDF 1 Bright A_CustomMissile("SparkFireBen",52,0,random(-5,5),CMF_AIMOFFSET,random(-1,7))
	   BENE KBJCGDF 1 Bright A_CustomMissile("SparkFireBen",52,0,random(-1,1),CMF_ABSOLUTEPITCH,random(-9,6))
	     BENE KBJCGDF 1 Bright A_CustomMissile("SparkFireBen",52,0,random(-8,8),CMF_AIMOFFSET,random(-2,6))
    	 BENE KBJCGDF 1 Bright A_CustomMissile("SparkFireBen",52,0,random(-5,5),CMF_ABSOLUTEPITCH,random(-9,7))
 BENE KBJCGDF 1 Bright A_CustomMissile("SparkFireBen",52,0,random(-12,12))
	   	   BENE A 8 bright A_facetarget
	   BENE KBJCGDF 1 Bright A_CustomMissile("SparkFireBen",52,0,random(-1,1),CMF_ABSOLUTEPITCH,random(-9,4))
	     BENE KBJCGDF 1 Bright A_CustomMissile("SparkFireBen",52,0,random(-8,8),CMF_AIMOFFSET,random(-2,2))
    	 BENE KBJCGDF 1 Bright A_CustomMissile("SparkFireBen",52,0,random(-12,12))
		BENE KBJCGDF 1 Bright A_CustomMissile("SparkFireBen",52,0,random(-5,5),CMF_ABSOLUTEPITCH,random(-9,9))
	   BENE KBJCGDF 1 Bright A_CustomMissile("SparkFireBen",52,0,random(-1,1),CMF_AIMOFFSET,random(-1,1))
	     BENE KBJCGDF 1 Bright A_CustomMissile("SparkFireBen",52,0,random(-8,8),CMF_AIMOFFSET,random(-2,2))
    	 BENE KBJCGDF 1 Bright A_CustomMissile("SparkFireBen",52,0,random(-5,5),CMF_ABSOLUTEPITCH,random(-5,6))
 BENE KBJCGDF 1 Bright A_CustomMissile("SparkFireBen",52,0,random(-12,12))
	   	   BENE A 8 bright A_facetarget
	   BENE KBJCGDF 1 Bright A_CustomMissile("SparkFireBen",52,0,random(-1,1),CMF_AIMOFFSET,random(-1,1))
	     BENE KBJCGDF 1 Bright A_CustomMissile("SparkFireBen",52,0,random(-8,8),CMF_ABSOLUTEPITCH,random(-5,1))
    	 BENE KBJCGDF 1 Bright A_CustomMissile("SparkFireBen",52,0,random(-12,12))
		BENE KBJCGDF 1 Bright A_CustomMissile("SparkFireBen",52,0,random(-5,5),CMF_ABSOLUTEPITCH,random(-8,5))
	   BENE KBJCGDF 1 Bright A_CustomMissile("SparkFireBen",52,0,random(-1,1),CMF_AIMOFFSET,random(-1,1))
	     BENE KBJCGDF 1 Bright A_CustomMissile("SparkFireBen",52,0,random(-8,8),CMF_ABSOLUTEPITCH,random(-9,5))
    	 BENE KBJCGDF 1 Bright A_CustomMissile("SparkFireBen",52,0,random(-12,12))
		BENE KBJCGDF 1 Bright A_CustomMissile("SparkFireBen",52,0,random(-5,5),CMF_AIMOFFSET,random(-3,3))

	   BENE A 10 bright
	   Goto see
	   
	   OtherM:
	   BENE A 0
	   BENE A 0 A_Jump(256,"SG","Gifts","Focusedfire","Shotgunrounded")
	   Goto See
	   Easter:
	   BENE A 0 A_jumpif(user_Easter>=1,"EasterIsOver")
	   BENE A 0 A_PlaySound("Bene/Song",7, 2, false, ATTN_NONE)
	   BENE A 0 A_SetUserVar("User_Easter",User_Easter+1)
	   Goto Missile+1
	   EasterIsOver:
	   BENE A 0 
	   Goto Missile+1
	   Gifts:
	   BENE ABCD 1 Bright A_CustomMissile("MineShotgun",random(20,60),random(-15,15),random(-20,20),0)
	   Goto See
	   SG:
	   BENE A 2 A_FaceTarget
	   BENE KBJCGDF 4 Bright  A_CustomBulletAttack(random(5,180), random(0,50), random(5,30), random(1,3), "BulletPuff", 0)
	   BENE K 0 Bright A_CheckSight("See")
	   BENE K 0 Bright A_CheckRange(1250,"See")
	   BENE KB 2 Bright A_CustomBulletAttack(22.5, 0, random(5,18), random(1,5), "BulletPuff", 0)
	   BENE EAHBICLD 4 Bright  A_CustomBulletAttack(random(5,180), random(0,50), random(5,30), random(1,3), "BulletPuff", 0)
	   BENE A 1  A_Monsterrefire(128,"See")
	   Goto SG
	 Death:
	   BENE AAAAAA 1 A_Scream
	   BENE A 8 A_Fall
	   BENE AAABCDDDD 6 A_CustomMissile ("HKRedDeath",random(0,80),random(-30,50), CMF_AIMOFFSET, 2, -10)
	   BENE DDDDDDDDDDDDDDDDDDDD  1 A_SpawnitemEx("Shotgun",random(-80,80),random(-80,80),random(-80,80),random(-80,80),random(-80,80),random(-80,80),random(-80,80))
	   BENE D 8 Radius_Quake(40,60,0,40,0)
	   BENE DDDDDDDDDDDDDDDDDDDD  1 A_SpawnitemEx("Shotgun",random(-80,80),random(-80,80),random(-80,80),random(-80,80),random(-80,80),random(-80,80),random(-80,80))
	   BENE D 6 A_SetTranslucent(0.75)
	   BENE D 6 A_SetTranslucent(0.5)
	   BENE D 6 A_SetTranslucent(0.25)
	   	 TNT1 A 0 A_SpawnItemEx ("CH_Cactus", 0,0,24, VelX,VelY,VelZ, 0, SXF_ABSOLUTEMOMENTUM| SXF_NOCHECKPOSITION,128)
	   Stop
	   
		}
}


ACTOR ShotgunShrine
{
   Radius 12
   Height 12
   Speed 8
 Health 800
MONSTER
+notrigger
   +missilemore
   +missileevenmore
   +thruspecies
   +dontharmclass
   +dontharmspecies
   +notargetswitch
   +noclip
   Species "BENE"
   SeeSound "weapons/sshotl"
   DeathSound "weapons/rockx"
   Dropitem "CH_Shell"
   Dropitem "Shotgun"
   Dropitem "Shotgun"
   Dropitem "Shotgun"
   
   States
   {
   Spawn:
      BENE M 2 Bright A_SetScale(1.0,0.1) 
BENE M 2 Bright A_SetScale(1.0,0.4) 
BENE M 2 Bright A_SetScale(1.0,0.7) 
BENE M 2 Bright A_SetScale(1.0,1.0) 
   Idle:
   BENE MNOP 6 A_chase
   loop
   Missile:
       BENE M 6 a_facetarget
	   BENE M 6  Bright 
	   Nuts:
	  BENE Q 1 bright a_playsound("shotguy/attack",0)
      BENE QRQRQRQR 1 Bright A_CustomMissile("SparkFireBen",84,0,random(-3,3))
	  TNT1 A 0 damagething(50)
	  
	   loop
   Death:
   BENE M 2 Bright A_SetScale(0.8,1.0)
   BENE M 2 Bright A_SetScale(0.5,1.2)
   BENE M 2 Bright A_SetScale(0.3,1.5)
    BENE M 2 Bright A_SetScale(0.1,1.8)
	TNT1 A 0 A_SetScale(1.0,1.0) 
   
	   TNT1 A 0 A_scream
	   TNT1 A 0 a_fall
      MISL BCD 5 Bright A_Explode(random(5,15),128)
	    TNT1 AA 0  A_CustomMissile("MineShotgun",random(20,60),random(-15,15),random(-20,20),0)
	  
	  Stop
	  }
}



ACTOR Shotgunpunishernerfed
{
  Game Doom
  speed 1
  Projectile
  +noclip
  Alpha 0.01
  States
  {
  Spawn:
  TNT1 A 0
  Fly:
    TNT1 A 0 Bright A_Spawnitemex("ShotgunPunishNerf",0,128,12,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERPOINTERS)
    TNT1 A 1 Bright A_Spawnitemex("ShotgunPunishNerf2",0,-128,12,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERPOINTERS)
    TNT1 A 0 A_die
	Stop
  }
}




ACTOR ShotgunPunish
{
   Radius 12
   Height 12
   Speed 1
 Health 300
   RENDERSTYLE soultrans
   ALPHA 0.95
MONSTER
+notrigger
   +noclip
   -countkill
   SeeSound "weapons/sshotl"
   DeathSound "weapons/rockx"
   States
   {
   Spawn:
      SHOT A 2 Bright A_SetScale(0.8,0.3) 
      SHOT A 2 Bright A_SetScale(1.3,0.6)  
	  SHOT A 4 Bright A_SetScale(1.6,0.9)
	  SHOT A 4 Bright A_SetScale(1.2,1.1)
	  SHOT A 4 Bright A_SetScale(1.0,1.0)  
	  SHOT A 3 Bright A_SetScale(1.3,0.6) 
   Shoot:
      SHOT A 0 a_facetarget
	  SHOT A 13  Bright 
	  SHOT A 4 bright a_playsound("weapons/sshotf")
	  SHOT A 4 Bright A_SetScale(1.3,0.6) 
	  SHOT A 6 bright A_CustomBulletAttack(7, 5, random(3,10), random(1,6), "BulletPuff", 0)
	  SHOT A 4 Bright A_SetScale(1.0,1.0)  
	   Goto death
   Death:
           SHOT A 3 Bright A_SetScale(0.7,0.7)  
	  SHOT A 3 Bright A_SetScale(0.4,0.4)  
	   SHOT A 3 Bright A_SetScale(0.1,0.1)  
	   TNT1 A 0 A_SetScale(1.0,1.0) 
	   TNT1 A 0 A_scream
      MISL BCD 5 Bright A_Explode(random(5,15),64)
	  TNT1 A 0 A_die
	  Stop
	  }
}

ACTOR ShotgunPunish2
{
   Radius 12
   Height 12
   Speed 1
 Health 300
   RENDERSTYLE soultrans
   ALPHA 0.95
MONSTER
+notrigger
   +noclip
   -countkill
   SeeSound "weapons/sshotl"
   DeathSound "weapons/rockx"
   States
   {
   Spawn:
      SHOT A 2 Bright A_SetScale(-0.8,0.3) 
      SHOT A 4 Bright A_SetScale(-1.3,0.6)  
	  SHOT A 4 Bright A_SetScale(-1.6,0.9)
	  SHOT A 4 Bright A_SetScale(-1.2,1.1)
	  SHOT A 3 Bright A_SetScale(-1.0,1.0)  
   Shoot:
      SHOT A 0 a_facetarget
      SHOT A 13  Bright 
	   SHOT A 4 bright a_playsound("weapons/sshotf")
	  SHOT A 4 Bright A_SetScale(-1.3,0.6) 
	  SHOT A 6 bright A_CustomBulletAttack(7, 5, random(3,10), random(1,6), "BulletPuff", 0)
	  SHOT A 3 Bright A_SetScale(-1.0,1.0) 
	   Goto death
   Death:
      SHOT A 3 Bright A_SetScale(-0.7,0.7)  
	  SHOT A 3 Bright A_SetScale(-0.4,0.4)  
	   SHOT A 3 Bright A_SetScale(-0.1,0.1)  
	   TNT1 A 0 A_scream
      MISL BCD 5 Bright A_Explode(random(5,15),64)
	  TNT1 A 0 A_die
	  Stop
	  }
}


ACTOR Shotgunpunisher
{
  Game Doom
  speed 1
  Projectile
  +noclip
  Alpha 0.01
  States
  {
  Spawn:
  TNT1 A 0
  Fly:
    TNT1 A 0 Bright A_Spawnitemex("ShotgunPunish",0,128,12,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERPOINTERS)
    TNT1 A 1 Bright A_Spawnitemex("ShotgunPunish2",0,-128,12,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERPOINTERS)
    TNT1 A 0 A_die
	Stop
  }
}



ACTOR ShotgunPunishnerf
{
   Radius 12
   Height 12
   Speed 1
 Health 300
   RENDERSTYLE soultrans
   ALPHA 0.95
MONSTER
+notrigger
   +noclip
   SeeSound "weapons/sshotl"
   DeathSound "weapons/rockx"
   States
   {
   Spawn:
      SHOT A 6 Bright A_SetScale(0.8,0.3) 
      SHOT A 6 Bright A_SetScale(1.3,0.6)  
	  SHOT A 6 Bright A_SetScale(1.6,0.9)
	  SHOT A 6 Bright A_SetScale(1.2,1.1)
	  SHOT A 6 Bright A_SetScale(1.0,1.0)  
	  SHOT A 6 Bright A_SetScale(1.3,0.6) 
   Shoot:
      SHOT A 0 a_facetarget
	  SHOT A 18  Bright 
	  SHOT A 4 bright a_playsound("weapons/sshotf")
	  SHOT A 4 Bright A_SetScale(1.3,0.6) 
	  SHOT A 6 bright A_CustomBulletAttack(7, 5, random(1,7), random(1,5), "BulletPuff", 0)
	  SHOT A 4 Bright A_SetScale(1.0,1.0)  
	   Goto death
   Death:
           SHOT A 3 Bright A_SetScale(0.7,0.7)  
	  SHOT A 3 Bright A_SetScale(0.4,0.4)  
	   SHOT A 3 Bright A_SetScale(0.1,0.1)  
	   TNT1 A 0 A_SetScale(1.0,1.0) 
	   TNT1 A 0 A_scream
      MISL BCD 5 Bright A_Explode(random(5,15),64)
	  TNT1 A 0 A_die
	  Stop
	  }
}

ACTOR ShotgunPunishnerf2
{
   Radius 12
   Height 12
   Speed 1
 Health 300
   RENDERSTYLE soultrans
   ALPHA 0.95
MONSTER
+notrigger
   +noclip
   SeeSound "weapons/sshotl"
   DeathSound "weapons/rockx"
   States
   {
   Spawn:
      SHOT A 6 Bright A_SetScale(-0.8,0.3) 
      SHOT A 6 Bright A_SetScale(-1.3,0.6)  
	  SHOT A 6 Bright A_SetScale(-1.6,0.9)
	  SHOT A 6 Bright A_SetScale(-1.2,1.1)
	  SHOT A 6 Bright A_SetScale(-1.0,1.0)  
   Shoot:
      SHOT A 0 a_facetarget
      SHOT A 18  Bright 
	   SHOT A 4 bright a_playsound("weapons/sshotf")
	  SHOT A 4 Bright A_SetScale(-1.3,0.6) 
	  SHOT A 6 bright A_CustomBulletAttack(7, 5, random(1,7), random(1,5), "BulletPuff", 0)
	  SHOT A 3 Bright A_SetScale(-1.0,1.0) 
	   Goto death
   Death:
      SHOT A 3 Bright A_SetScale(-0.7,0.7)  
	  SHOT A 3 Bright A_SetScale(-0.4,0.4)  
	   SHOT A 3 Bright A_SetScale(-0.1,0.1)  
	   TNT1 A 0 A_scream
      MISL BCD 5 Bright A_Explode(random(5,15),64)
	  TNT1 A 0 A_die
	  Stop
	  }
}



ACTOR Shotgunpunisher2
{
  Game Doom
  speed 1
  Projectile
  +noclip
  Alpha 0.01
  States
  {
  Spawn:
  TNT1 A 0
  Fly:
    TNT1 A 0 Bright A_Spawnitemex("ShotgunShrine",0,178,12,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERPOINTERS)
    TNT1 A 1 Bright A_Spawnitemex("Shotgunshrine",0,-178,12,0,0,0,0,SXF_NOCHECKPOSITION|SXF_TRANSFERPOINTERS)

	Stop
  }
}


ACTOR SparkShieldBen
{
  Game Doom
  +NOGRAVITY
  +SPAWNFLOAT
  +nointeraction
  RenderStyle Add
  Speed 1
  Alpha 0.95
  Scale 1.33
  Mass 2
  States
  {
  Spawn:
    PUFF A 10 Bright
    PUFF B 10 Bright
	PUFF A 10 Bright
    PUFF B 10 Bright
	PUFF A 10 Bright
    PUFF B 10 Bright
	PUFF A 10 Bright
    PUFF B 10 Bright
	PUFF BBB 5 A_fadeout(0.33) 
	
    Stop
  }
}


ACTOR SparkFireBen
{
  Game Doom
  Radius 2
  Height 2
  Speed 55
  FastSpeed 80
  Damage (random(6,12))
  Projectile
  +mthruspecies
  RenderStyle Add
  Alpha 0.85
  Scale 0.15
  DeathSound "imp/shotx"
  States
  {
  Spawn:
    PUFF AB 1 Bright A_SpawnitemEx("Sparkpuff1",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)

    Loop
  Death:
    TNT1 AAAAAAAAAAAA 0 A_SpawnitemEx("Sparkpuff1",0,0,0,random(-3,3),random(-3,3),random(-3,3),random(-358,358),SXF_NOCHECKPOSITION)
    Stop
  }
}
