This article's documentation is for anything that uses the Source engine. Click here for more information.

Trigger brush: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
(Added InputFilter keyvalue to the FGD, also for some reason the code has Ignore Use and Ignore All as 10 and 20 instead of 16 and 32 from base.fgd, not sure why but it is what the code says)
(→‎Keyvalues: code has 0x10 and 0x20 which are hexadecimals)
Line 16: Line 16:
:*4: Ignore Pushables
:*4: Ignore Pushables
:*8: Ignore Touch/Untouch
:*8: Ignore Touch/Untouch
:*10: Ignore Use
:*16: Ignore Use
:*20: Ignore All}}
:*32: Ignore All}}
{{KV|Don't alert parent|intn=DontMessageParent|bool|Decides whether to forward OnStartTouch, OnEndTouch outputs or Use input to parented entity.}}
{{KV|Don't alert parent|intn=DontMessageParent|bool|Decides whether to forward OnStartTouch, OnEndTouch outputs or Use input to parented entity.}}



Revision as of 12:34, 12 June 2025

Obsolete-notext.png
This entity is obsolete. Its use is discouraged. It may only exist/function in older engine branches.
Icon-NotInFGD.png
This entity is not in the FGD by default.
See below for instructions on making it available.
C++ Class hierarchy
CTriggerBrush
CBaseEntity
C++ modelentities.cpp

trigger_brush is a brush entity available in all Source Source games. Deprecated entity during the development of Half-Life 2, its sole difference compared to other entities is that a OnUse output ↓ exists which may be useful when combined with player event targetnames (such as game_playerdie).

Note.pngNote:The brush is fully solid unlike other trigger entities.
Note.pngNote:Use func_button instead to detect players using +use, it behaves like trigger_brush but is more likely to work on any version of Source.

Keyvalues

Name (targetname) <string>[ Edit ]
The name that other entities refer to this entity by, via Inputs/Outputs or other keyvalues (e.g. parentname or target).
Also displayed in Hammer's 2D views and Entity Report.
See also:  Generic Keyvalues, Inputs and Outputs available to all entities

Input Filter (InputFilter) <flags>
Used to specify which inputs this entity will accept. Add multiple together to ignore multiple types of inputs.
  • 0: Allow all inputs
  • 1: Ignore Players
  • 2: Ignore NPCs
  • 4: Ignore Pushables
  • 8: Ignore Touch/Untouch
  • 16: Ignore Use
  • 32: Ignore All
Don't alert parent (DontMessageParent) <boolean>
Decides whether to forward OnStartTouch, OnEndTouch outputs or Use input to parented entity.

Inputs

Use
Fires the OnUse output.

EnableDisable:

Enable / Disable
Enable/disable this entity from performing its task. It might also disappear from view.

Outputs

OnUse
!activator = activator of the Use input
!caller = this entity
Fired when the Use input is given.
OnStartTouch
!activator = entity that touched this trigger
!caller = this entity
Fired when an entity starts touching this trigger. The touching entity must pass this trigger's InputFilter to cause this output to fire.
OnEndTouch
!activator = entity that stopped touching this trigger (may be NULL if the entity was killed)
!caller = this entity
Fired when an entity stops touching this trigger. Only entities that passed this trigger's InputFilter will cause this output to fire.

FGD Code

@SolidClass base(Targetname, Parentname, Global, Inputfilter, EnableDisable) = trigger_brush
[
	InputFilter(choices) : "Input Filter" : 0 : "Used to specify which inputs this entity will accept." =
	[
		0 : "Allow all inputs"
		1 : "Ignore Players"
		2 : "Ignore NPCs"
		4 : "Ignore Pushables"
		8 : "Ignore Touch/Untouch"
		10 : "Ignore Use"
		20 : "Ignore All"
	]

	DontMessageParent(integer) : "Don't alert parent" : 0 : "When 0 forwards OnStartTouch, OnEndTouch outputs or Use input to parented entity."

	input Use(void) : "Fires the OnUse output."

	output OnUse(void) : "Fired when the Use input is given."
	output OnStartTouch(void) : "Fired when an entity starts touching this trigger. The touching entity must pass this trigger's InputFilter to cause this output to fire."
	output OnEndTouch(void) : "Fired when an entity stops touching this trigger. Only entities that passed this trigger's InputFilter will cause this output to fire."
]

Convars

Cvar/Command Parameters or default value Descriptor Effect
showtriggers 0 bool If this is true when this entity spawns its brush will be visible.

See also