actor AcidCloud
{
 height 5
 radius 5
 speed 4
 +RIPPER
 +BLOODLESSIMPACT
 +NODAMAGETHRUST
 +DONTHARMSPECIES
 +DONTHURTSPECIES
 projectile
 renderstyle Translucent 
 alpha 0.5
 species Xenomorph
 Damagetype "poison"
 Poisondamage 8
 states
 {
  spawn:
	OTXS ABCDE 2
	OTXM ABCDE 2
	OTXL ABCDE 2
  death:
	OTXL AB 2
	OTXM C 2
	OTXS DE 2
  deathloop:
	OTXS ABCDE 1 A_FadeOut(0.1, TRUE)
	loop
  }
}

actor XenoSentinel : XenoWarrior replaces Cacodemon
{
 bloodcolor orange
 species Xenomorph
 bloodtype XenoBlood
 health 70
 radius 20
 height 52
 mass 120
 speed 20
 scale 1.2
 painchance 70
 maxstepheight 54
 monster
 +FLOAT
 +FLOORCLIP
 +DONTHARMSPECIES
 +DONTHURTSPECIES
 +FASTMELEE
 +MISSILEMORE
 +CANBLAST
 +QUICKTORETALIATE
 seesound "xeno/sight"
 deathsound "xeno/death"
 painsound "xeno/pain"
 meleesound "xeno/attack"
 obituary "%o was melted by the Sentinel's acid."
 states
 {
  melee:
	TNT1 A 0 A_CheckCeiling("Drop")
    ALIN EF 6 A_FaceTarget
	ALIN A 0 A_PlaySound("xeno/acidbelch")
	TNT1 A 0 A_CustomMissile("acidcloud", 38, 0, 0)
	TNT1 A 0 A_CustomMissile("acidcloud", 38, 0, 45)
	TNT1 A 0 A_CustomMissile("acidcloud", 38, 0, 90)
	TNT1 A 0 A_CustomMissile("acidcloud", 38, 0, 45)
	TNT1 A 0 A_CustomMissile("acidcloud", 38, 0, 0)
	ALIN G 4
	goto see
  pain:
	ALIN H 2 A_Pain
	TNT1 A 0 A_AlertMonsters //alerting the horde
	goto see
  }
}

actor SentiReplacer : XenoSentinel replaces Fatso
{
 +BOSS
 +BOSSDEATH
 scale 1.3
 states
 {
    death:
		TNT1 A 0 A_ChangeFlag("CEILINGHUGGER", 0)
		TNT1 A 0 A_ChangeFlag("NoPain", 0)
		TNT1 A 0 A_ChangeFlag("NOGRAVITY", 0)
		TNT1 AAA 0 A_CustomMissile("acidcloud", 38, 0, 0)
		TNT1 A 0 A_Jump(256, "death1", "death2")
	death1:
		ALIN I 6 A_Scream
		ALIN J 5
		ALIN K 4
		ALIN L 3 A_NoBlocking
		ALIN M 2 A_BOSSDEATH
		ALIN N -1 
		Stop
	death2:
		ALIR A 6 A_Scream
		ALIR B 5
		ALIR C 4
		ALIR D 3 A_NoBlocking
		ALIR E 2 A_BOSSDEATH
		ALIR F -1 
		stop
  xdeath:
	TNT1 A 0 A_ChangeFlag("CEILINGHUGGER", 0)
	TNT1 A 0 A_ChangeFlag("NoPain", 0)
	TNT1 A 0 A_ChangeFlag("NOGRAVITY", 0)
	TNT1 AAA 0 A_CustomMissile("acidcloud", 38, 0, 0)
	TNT1 A 0 A_Jump(256, "xdeath1", "xdeath2", "xdeath3")
  xdeath1:
	ALIG A 7 A_PlaySound("xeno/crack")
	TNT1 A 0 A_SpawnItem("NashGore_GibGenerator",0,0,0,0)
	TNT1 A 0 A_SpawnItem("NashGore_GibGenerator",0,0,0,0)
	TNT1 A 0 A_SpawnItem("NashGore_GibGenerator",0,0,0,0)
	TNT1 A 0 A_SpawnItem("NashGore_GibGenerator",0,0,0,0)
	TNT1 A 0 A_SpawnItemEx("Arm3",random(-10,10),random(-10,10),random(12,40),random(-500,500)/100.00,random(-500,500)/100.00,random(400,1000)/100.00,random(-180,180),160,192)
	TNT1 A 0 A_SpawnItemEx("Arm3",random(-10,10),random(-10,10),random(12,40),random(-500,500)/100.00,random(-500,500)/100.00,random(400,1000)/100.00,random(-180,180),160,192)
	TNT1 A 0 A_SpawnItemEx("Head",random(-10,10),random(-10,10),random(12,40),random(-500,500)/100.00,random(-500,500)/100.00,random(400,1000)/100.00,random(-180,180),160,192)
	TNT1 A 0 A_SpawnItemEx("Tail",random(-10,10),random(-10,10),random(12,40),random(-500,500)/100.00,random(-500,500)/100.00,random(400,1000)/100.00,random(-180,180),160,192)
	ALIG B 6 A_Scream
	ALIG C 5 
	ALIG D 4
	ALIG E 3 A_NoBlocking
	ALIG F 2 A_BOSSDEATH
	ALIG G -1 
	stop
  xdeath2:
	XENG A 7 A_PlaySound("xeno/crack")
	TNT1 A 0 A_SpawnItem("NashGore_GibGenerator",0,0,0,0)
	TNT1 A 0 A_SpawnItem("NashGore_GibGenerator",0,0,0,0)
	TNT1 A 0 A_SpawnItem("NashGore_GibGenerator",0,0,0,0)
	TNT1 A 0 A_SpawnItem("NashGore_GibGenerator",0,0,0,0)
	TNT1 A 0 A_SpawnItemEx("Arm1",random(-10,10),random(-10,10),random(12,40),random(-500,500)/100.00,random(-500,500)/100.00,random(400,1000)/100.00,random(-180,180),160,192)
	TNT1 A 0 A_SpawnItemEx("Arm2",random(-10,10),random(-10,10),random(12,40),random(-500,500)/100.00,random(-500,500)/100.00,random(400,1000)/100.00,random(-180,180),160,192)
	TNT1 A 0 A_SpawnItemEx("Head",random(-10,10),random(-10,10),random(12,40),random(-500,500)/100.00,random(-500,500)/100.00,random(400,1000)/100.00,random(-180,180),160,192)
	TNT1 A 0 A_SpawnItemEx("Tail",random(-10,10),random(-10,10),random(12,40),random(-500,500)/100.00,random(-500,500)/100.00,random(400,1000)/100.00,random(-180,180),160,192)
	XENG B 6 A_Scream
	XENG C 5
	XENG D 4
	XENG E 3
	XENG F 2
	XENG G 1 A_NoBlocking
	XENG H 1 A_BOSSDEATH
	XENG I 1 
    stop
  xdeath3:
    XEGB A 7 A_PlaySound("xeno/crack")
	TNT1 A 0 A_SpawnItem("NashGore_GibGenerator",0,0,0,0)
	TNT1 A 0 A_SpawnItem("NashGore_GibGenerator",0,0,0,0)
	TNT1 A 0 A_SpawnItem("NashGore_GibGenerator",0,0,0,0)
	TNT1 A 0 A_SpawnItem("NashGore_GibGenerator",0,0,0,0)
	TNT1 A 0 A_SpawnItemEx("Arm2",random(-10,10),random(-10,10),random(12,40),random(-500,500)/100.00,random(-500,500)/100.00,random(400,1000)/100.00,random(-180,180),160,192)
	TNT1 A 0 A_SpawnItemEx("Arm3",random(-10,10),random(-10,10),random(12,40),random(-500,500)/100.00,random(-500,500)/100.00,random(400,1000)/100.00,random(-180,180),160,192)
	TNT1 A 0 A_SpawnItemEx("Head",random(-10,10),random(-10,10),random(12,40),random(-500,500)/100.00,random(-500,500)/100.00,random(400,1000)/100.00,random(-180,180),160,192)
	TNT1 A 0 A_SpawnItemEx("Tail",random(-10,10),random(-10,10),random(12,40),random(-500,500)/100.00,random(-500,500)/100.00,random(400,1000)/100.00,random(-180,180),160,192)
	XEGB B 6 A_Scream
	XEGB C 5
	XEGB D 4
	XEGB E 3
	XEGB F 2 A_NoBlocking
	XEGB G 1 A_BOSSDEATH
	XEGB H -1 
	stop
  }
}