actor DESentinel : McM_Monster replaces PainElemental {
	obituary "%o was blasted away by a sentinel."
	health 700
	radius 31
	height 56
	Scale 1.0
	mass 1000
	speed 8
	painchance 64
	ProjectilePassHeight 72
	SeeSound "monster/cubsit"
	painsound "monster/senpai"
	activesound "monster/senact"
	DeathSound "monster/cubdth"  
	MONSTER
	Species "PainElemental"
	Tag "Sentinel"
	+DONTBLAST
	+DONTHURTSPECIES
	+FLOAT
	+NOGRAVITY
	+NOBLOOD
	-DONTFALL
	states {
		Idle:
			SENT A 10 A_Look
		loop
		See:
			SENT A 3 A_Chase
		loop
		Missile:
			TNT1 A 0 A_Jump(96, "Cube")
			SENT A 0 A_Jump(96,"Red")
			SENT A 8 A_FaceTarget
			SENT C 0 A_CustomMissile("SentGMissile",52,12,0,1,0)
			SENT C 8 Bright A_CustomMissile("SentGMissile",52,-12,0,1,0)
			SENT A 6 A_FaceTarget
			SENT C 0 A_CustomMissile("SentGMissile",52,12,0,1,0)
			SENT C 8 Bright A_CustomMissile("SentGMissile",52,-12,0,1,0)
			SENT A 8 A_FaceTarget
			SENT C 0 A_CustomMissile("SentGMissile",52,12,0,1,0)
			SENT C 8 Bright A_CustomMissile("SentGMissile",52,-12,0,1,0)
		goto See
		Cube:
			SENT D 4 A_FaceTarget
			TNT1 A 0 A_PlaySound("Cube/Fire", 5)
			SENT E 0 A_CustomMissile("CubeShotSentinel",52,12,0,1,0)
			SENT E 4 Bright A_CustomMissile("CubeShotSentinel",52,-12,0,1,0)
			SENT D 1 A_SpidRefire
		goto Cube+1
		Red:
			SENT D 4 A_FaceTarget 
			SENT E 5 Bright A_FaceTarget
			SENT F 8 Bright A_CustomMissile("SentRMissile",24,0,0,0)
		goto See
		Pain:
			SENT B 3
			SENT B 3 A_Pain
			SENT B 4 A_JumpIfInventory("MCM_BehaviorToggle", 1, "SummonCubes")
		Goto See
		SummonCubes:
			TNT1 A 0 A_Jump(128, "ForReal")
		Goto See
		ForReal:
			SENT B 0 A_FaceTarget
			SENT B 0 A_CustomMissile("GCSpawner",24,-5,-30,0)
			SENT B 2 A_CustomMissile("GCSpawner",24,5,30,0)
			SENT B 1
		goto See
		Death:
			SENT G 8 Bright
			SENT H 7 Bright A_Scream
			SENT IJ 7 Bright
			SENT K 7 A_NoBlocking
			SENT K -1 A_SetFloorClip
		stop
		Death.Corpse:
			SENT K -1
		Stop
		Raise:
			SENT KJIHGML 4
		Goto See
	}
}

Actor CubeShotSentinel : CubeShot {
	Damage (random(5, 10))
	DamageType Fire
	Obituary "%o got fried by a Sentinel."
	Speed 24
}

ACTOR SentGmissile
{
   Radius 5
   Height 5
   Speed 20
   Damage (6 * random(4, 8))
   DamageType "PainePoison"
   RenderStyle ADD
   Alpha 0.75
   PROJECTILE
   +FORCEXYBILLBOARD
   +DONTBLAST
   Seesound "weapons/boltfi"
   DeathSound "monster/disht1"   
   States
   {
   Spawn:
      CFX6 A 1 Bright A_SpawnItem("Barbtrail",0,0)
      loop
   Death:
      CFX6 BCDE 4 Bright
      Stop
   }
}

ACTOR SentRmissile
{
   Radius 5
   Height 5
   Speed 24
   Damage (8 * random(5, 6))
   DamageType "PaineMagic"
   RenderStyle ADD
   Alpha 0.85
   PROJECTILE
   +FORCEXYBILLBOARD
   +DONTBLAST
   Seesound "weapons/bigbrn"
   DeathSound "weapons/firex3"   
   States
   {
   Spawn:
      SEF1 AABBCC 1 Bright A_SpawnItemEx("RedPuff",0,0,0,0,0,0,0,128,0)
      loop
   Death:
      SEF1 DEFG 5 Bright A_Explode(32, 64, 0)
      SEF1 H 5 Bright
      Stop
   }
}

ACTOR GCSpawner {
   Radius 5
   Height 5
   Speed 12
   RenderStyle ADD
   Alpha 0.75
   PROJECTILE
   +THRUGHOST
   -NOGRAVITY
   +LOWGRAVITY
   +FORCEXYBILLBOARD
   +DONTBLAST
   Seesound "weapons/smlbrn"
   DeathSound "vile/firecrkl"
   Translation "160:167=112:123"
   States
   {
   Spawn:
      SEF2 AABBCCDD 1 Bright A_SpawnItemEx("BarbTrail",0,0,0,0,0,0,0,128,0)
      loop
   Death:
      NFAB A 3 Bright
      NFAB B 3 Bright A_SpawnItem("SentinelCube_NoCount",0,0)
      NFAB CDEFGH 3 Bright
      Stop
   }
}