func_nav_prerequisite
is a brush entity available in
Team Fortress 2. It is also available in
Black Mesa. It is a trigger volume that requires bots to do perform a task before they can move through it.
Note:func_nav_prerequisite
triggers are only registered by the Navmesh on round start. To register them late, the following VScript snippet can be used to force a nav mesh update.
RegisterScriptGameEventListener("round_start")
SendGlobalGameEvent("round_start", {})
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.
- Task (task) <choices>
- What must be done to move through this volume
- 1 : Destroy Entity (Value = max range to attack from. -1 for no range restriction)
Bug:In
, this task does not function.
- 2 : Move to Entity
- 3 : Wait (Value = seconds to wait)
- Task Entity (entity) <targetname>
- The subject entity of the Task.
- Task Value (value) <float>
- A Task-specific value.
BaseTrigger
Expand
- Filter Name (filtername) <filter>
- A filter entity to test potential activators against.
- Start Disabled (StartDisabled) <boolean>
- Stay dormant until activated (with the
Enable input).
|
Flags
BaseTrigger
Expand
- Everything (not including physics debris) : [64]
- Clients (Survivors, Special Infected, Tanks
 ) : [1]
- Only clients in vehicles : [32]
- Only clients *not* in vehicles : [512]
- Disallow Bots (removed since
) : [4096]
- NPCs (Common Infected, Witches
 ) : [2]
- Only player ally NPCs : [16]
- Only NPCs in vehicles (respects player ally flag) : [2048]
- Physics Objects (not including physics debris) : [8]
- Physics debris (include also physics debris) : [1024]
Pushables (Passes entities with classname func_pushable) : [4] 
- Deprecated.
Equivalent to using Everything + filter_activator_class that filters func_pushable .
|
Inputs
BaseTrigger
Expand
- Toggle
- Toggles this trigger between enabled and disabled states.
- Enable
- Enable trigger
- Disable
- Disable trigger
- TouchTest (in all games since
)
- Triggers either the OnTouching or OnNotTouching outputs for whether anything is touching this entity.
Bug:Sleeping prop_physics will never fire "OnTouching". Also applies to entities using prop_physics as base. (tested in: )
- StartTouch (in all games since
) !FGD
- Behave as if the !caller entity had just entered the trigger volume. Accepts non-physical entities.
- EndTouch (in all games since
) !FGD
- Behave as if !caller had just exited the trigger volume.
- DisableAndEndTouch (only in
 )
- Disables this trigger and calls EndTouch on all currently-touching entities.
|
Outputs
BaseTrigger
Expand
- OnStartTouch
- !activator = entity that caused this output
!caller = this entity Fired when a valid entity starts touching this trigger.
- OnStartTouchAll
- !activator = entity that caused this output
!caller = this entity Fired when a valid entity starts touching this trigger, and no other entities are touching it. If there are any other entities touching the trigger when a new one begins to touch, only OnStartTouch will fire.
- OnEndTouch
- !activator = entity that caused this output
!caller = this entity Fired when a valid entity stops touching this trigger.
Note:Will also fire for entities touching it when trigger is disabled via Disable input
Warning:This includes entities which are deleted while inside the trigger. In this case !activator will be invalid.
Warning:OnEndTouch can fire before OnStartTouch under certain circumstances[How?] where both are fired on the same tick and each have the same delay. Fix:Add a slight delay to OnEndTouch .
- OnEndTouchAll
- !activator = entity that caused this output
!caller = this entity Fired when all valid entities stop touching this trigger.
- OnTouching (in all games since
)
- !activator = !caller = this entity
Fired if something is currently touching this trigger when TouchTest is fired.
- OnNotTouching (in all games since
)
- !activator = !caller = this entity
Fired if nothing is currently touching this trigger when TouchTest is fired.
|
See also
- func_nav_prefer, which influences bots to prefer this region by decreasing the pathfinding cost within it.
- func_nav_avoid, which influences bots to avoid this region by increasing the pathfinding cost within it.