This article relates to the game "Team Fortress 2". Click here for more information.


From Valve Developer Community
Jump to: navigation, search

English (en)
class hierarchy
CObjectSentrygun defined in tf_obj_sentrygun.cpp

obj_sentrygun is a point entity available in Team Fortress 2 Team Fortress 2.

Sentry Guns in TF2 at levels 1, 2 and 3.

Entity Description

Used to place a Tfwiki favicon.png Sentry Gun in your map. The Sentry Gun is a defensive building that puts heavy fire on any enemies that come into range. The Sentry Gun has a range of 1100 Hammer Units from its origin.

Tip.pngTip:Mini-sentries can be created by copying the following VScript code to a .nut file and assigning it under the Entity Scripts
function Precache()
	NetProps.SetPropBool(self, "m_bMiniBuilding", true);

function OnPostSpawn()
	self.SetModelScale(0.75, 0.0);
	self.SetSkin(self.GetSkin() + 2);


Name (targetname) <string>
The targetname that other entities refer to this entity by.

Team (TeamNum) <choices>
  • 2 : Red
  • 3 : Blue
Starting Upgrade Level (defaultupgrade) <choices>
Object spawns in the selected level.
  • 0 : Level 1
  • 1 : Level 2
  • 2 : Level 3
Note.pngNote:Values higher than 2 are accepted (need to be typed in with SmartEdit off), with the limit being 90. With higher levels, the objects gain more health/damage/recharge speed.
SolidToPlayer (SolidToPlayer) <choices>
Object is solid or non-solid to players. !FGD
  • 1 : Solid
  • 0 : Non-solid


  •  [2] : Invulnerable
    Icon-Bug.pngBug:Invulnerable buildings can still be stunned with the Tfwiki favicon.png Sapper or completely destroyed with the Tfwiki favicon.png Red-Tape Recorder.
  •  [4] : Upgradable
  •  [8] : Infinite Ammo


SetHealth <integer>
Sets the current and maximum health. If the object is upgraded, the health will scale according to the new value.
Icon-Bug.pngBug:Crashes if set to 0.
AddHealth <integer>
Increase the current health of the object. Does not surpass maximum health. Does not destroy the building if set at 0.
RemoveHealth <integer>
Decrease current health of the object. Destroys the object if the health hits 0.
SetSolidToPlayer <boolean>
Sets the object to be solid or non-solid to players. 0 - non-solid, 1 - solid. !FGD
Note.pngNote:The builder of the building will always be solid to the object.
SetTeam <integer>
Ses the team the object is allied to. Does not change skin.
Skin <integer>
Sets the skin the object uses. Useful in conjunction with SetTeam.
Sets the builder of the object to the !activator.
Makes the building visible and re-enables it.
Makes the building invisible and disables it.
Icon-Bug.pngBug:Does not hide the obj_dispenser screen. A workaround is to fire the SetInactive (or SetActive) on the vgui_screen entity, although it will apply to all buildings.
Enable the object.
Note.pngNote:Using Enable after using the Hide input will enable the building and keep it invisible.
Icon-Bug.pngBug:Enable will reset the upgrade level on the object. Use the Show input instead, which properly re-enables the object.
Disable the object.


Sent when object dies.
Sent when hurt. Works with !activator.
OnRepaired  !FGD
Sent when repaired.
Icon-Bug.pngBug:Does not function.
OnDisabled  !FGD
Sent when disabled.
Icon-Bug.pngBug:Does not function.
OnReenabled  !FGD
Sent when enabled.
Icon-Bug.pngBug:Does not function.
OnObjectHealthChanged <integer> !FGD
Sends current health as a parameter whenever a change occurs.