actor SentryGun
{
 Health 440
 Radius 18
 Height 56
 Mass 400
 speed 0
 MaxTargetRange 8046
 MONSTER
 +FRIENDLY
 +FLOORCLIP
 +NOBLOOD
 +LOOKALLAROUND
 +NEVERRESPAWN
 +STANDSTILL
 +THRUSPECIES
 +QUICKTORETALIATE
 +FASTER
 +MISSILEMORE
 +MISSILEEVENMORE
 +NOFEAR
 +NOPAIN
 Species "Player"
 states
 {
  Spawn:
	SENT A 0 A_PlaySound ("sentry/ping")
    SENT AAAAAAAAAAA 1 A_Look
    loop
  See:
	SENT A 0 A_PlaySound ("sentry/ping")
	SENT AAAAAAAAAAA 1 A_FaceTarget
	SENT AAAAAAAAAAA 1 A_Chase("Missile", "Missile", CHF_DONTMOVE)
    loop
  Missile:
    SENT A 2 A_FaceTarget
	TNT1 A 0 A_PlaySound("sentry/fire")
    SENT B 1 bright A_CustomMissile("PulseTracer", 38, 0, Frandom(-3,3), CMF_CHECKTARGETDEAD, Frandom(-2,2))
    SENT A 1 A_SpidRefire
    goto Missile+1
  Death:
    SENT C 1 A_PlaySoundEx ("Sentry/Death", "SoundSlot5")
    SENT C 0 A_PlaySoundEx ("weapons/rocklx", "SoundSlot6")
    SENT C 0 A_SpawnItem ("SentryBoom", 0, 48)
    SENT C 512
  FadeOut:
    SENT C 1 A_FadeOut (0.1)
    loop
  }
}

actor SentryBoom
{
  radius 2
  height 2
  renderstyle Add
  +NOINTERACTION
  +CLIENTSIDEONLY
  states
  {
  Spawn:
    XPL1 ABCDEF 3 bright
    stop
  }
}

ACTOR SentryBox : CustomInventory replaces BlurSphere
{
 inventory.maxamount 3
 inventory.icon "SENBB0"
 inventory.pickupmessage "You picked up a UA 571-C Automated Sentry Gun!"
 +COUNTITEM
 +INVENTORY.INVBAR
 states
 {
  Spawn:
    SENB A -1
    Stop
  Use:
    TNT1 A 1 A_SpawnItemEx ("SentryGun", 56, 0, 8, 3, 0, 3)
    Stop
  }
}