actor ChestBurster
{
 bloodcolor gold
 species Xenomorph
 bloodtype BoilerBlood
 health 10
 meleerange 50
 radius 14
 height 14
 mass 20
 speed 16
 painchance 200
 maxstepheight 34
 scale 0.7
 monster
 +FLOAT
 +FLOORCLIP
 +DONTHARMSPECIES
 +DONTHURTSPECIES
 +NOINFIGHTING
 +FASTMELEE
 +FASTER
 +CANBLAST
 +QUICKTORETALIATE
 Seesound "chestsit" 
 AttackSound "chestatk"
 DeathSound "chestdeth"
 ActiveSound "chestact"
 Painsound "chestpai"
 Obituary "%o got nibbled by a chestburster."
 states
 {
  Spawn:
		TNT1 A 1
		// ExecuteAlways, 802, 0, <Threat Level>
		// 1 - Small blip
		// 2 - Medium blip
		// 3 - Large blip
		TNT1 A 0 ACS_ExecuteAlways(802, 0, 2)
		Goto Idle
	Idle:
	CHBU AB 6 A_Look
	TNT1 A 0 A_Jump(120, "Stalk")
	loop
  stalk:
    TNT1 A 0 A_Jump(200, "idle")
	TNT1 A 0 A_JumpIfTargetInLOS("chase", 110)
	CHBU AB 3 A_Look
	TNT1 A 0 A_JumpIfTargetInLOS("chase", 110)
	CHBU CDE 3 A_Wander
	TNT1 A 0 A_JumpIfTargetInLOS("chase", 110)
	loop
  see:
	TNT1 A 0 A_JumpIfTargetInLOS("chase", 110)
	goto chase
  hunt:
	CHBU A 0 A_FaceTarget
	CHBU AABBCCDDEE 4 A_Chase
	TNT1 A 0 A_JumpIfTargetInLOS("chase", 110)
	loop
  chase:
	TNT1 A 0 A_JumpIfCloser(300, "prepounce")
    CHBU AABB 3 A_Chase
	TNT1 A 0 A_FaceTarget
	CHBU CCDDEE 3 A_Chase
	TNT1 A 0 A_FaceTarget
	TNT1 A 0 A_JumpIfTargetInLOS("chase", 110)
	goto hunt
  Melee:
    CHBU FG 4 A_facetarget
    CHBU H 4 A_custommeleeattack(random(1,2)*2,0,0)
    CHBU I 4 A_facetarget
    goto see  
  prepounce:
	CHBU K 4
  pounce:
	CHBU L 2 A_FaceTarget
    CHBU A 0 A_PlaySound ("xeno/attack")
    CHBU A 0 ThrustThingZ (0, 34, 0, 0)
    CHBU A 0 ThrustThing (angle*256/360, 18, 0, 0)
	CHBU A 0 A_CustomMeleeAttack(random(1, 2)*2, "xeno/hack", "xeno/claw")
  JumpUp:
    CHBU MN 1
  JumpDown:
	TNT1 A 0 A_JumpIfCloser(100, "melee")
    CHBU N 1 A_CheckFloor ("Land")
    loop
  Land:
    CHBU A 2 A_Stop
    goto see
  pain:
	CHBU J 2 A_Pain
	goto see
  death:
	CHBU O 7 A_Scream
	CHBU P 6
	CHBU Q 5 
	CHBU R 4 
	CHBU S 3
	CHBU T 2
	CHBU UVW 1
	CHBU X -1 A_NoBlocking
	stop
  }
}

ACTOR MarineBurster replaces DeadMarine
{
 radius 6
 height 6
 health 5
 speed 0
 +LOOKALLAROUND
 +MOVEWITHSECTOR
 +DONTHARMSPECIES
 +DONTHURTSPECIES
 +SHOOTABLE
 +ISMONSTER
 +CORPSE
 +FLOORCLIP
 +DONTBLAST
 +NOTARGET
 species xenomorph
 states
 {
  Spawn:
	TNT1 A 0 A_Jump(200, "Opened", "RealBurst")
	PLA4 A 1 A_Look
	loop
  See:
	PLA4 A 1 A_JumpIfCloser(100, "burst")
	loop
  Death:
	TNT1 A 0 A_PlaySound("guts/drop")
	PLA4 EEEE 0 A_CustomMissile("NewBlood")
  realdeath:
	POSS U -1 A_NOBLOCKING
	loop
  burst:
	TNT1 A 0 A_Jump(200, "See")
  realburst:
	PLA4 A 0 A_PlaySound("eggopen")
	PlA4 A 20 A_FaceTarget
	PLA4 EEEE 0 A_CustomMissile("NewBlood")
	PLA4 B 4
	PLA4 C 4
	PLA4 E 0 A_SpawnItem("ChestBursterSpawner")
	PLA4 DE 4 A_FaceTarget
  Opened:
	PLA4 E -1 A_NOBLOCKING
	loop
  }
}

ACTOR ChestBursterSpawner : Randomspawner
{
 dropitem "ChestBurster"
}

ACTOR MarineBurster2 : MarineBurster replaces GibbedMarine {}

ACTOR MarineBurster3 : MarineBurster replaces GibbedMarineExtra {}

ACTOR MarineBurster4 : MarineBurster replaces DeadDoomImp {}

ACTOR MarineBurster5 : MarineBurster replaces DeadZombieman {}

ACTOR MarineBurster6 : MarineBurster replaces DeadShotgunguy {}

ACTOR MarineBurster7 : MarineBurster replaces DeadDemon {}

ACTOR MarineBurster8 : MarineBurster replaces DeadCacodemon {}