Template:O BaseTrigger: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
(activator/caller)
No edit summary
Line 1: Line 1:
{{expand|title=BaseTrigger|startcollapsed={{{startcollapsed|1}}}|noborder={{#ifeq:{{{startcollapsed}}}|0|1|0}}|bgcolor=initial|
{{expand|title=BaseTrigger|startcollapsed={{{startcollapsed|1}}}|noborder={{#ifeq:{{{startcollapsed}}}|0|1|0}}|bgcolor=initial|
{{bug|Spamming crouch jumps in a trigger can randomly fire <code>OnStartTouch</code>/<code>OnEndTouch</code>. {{Confirm|Is it a Multiplayer issue only?}}}}
{{O|OnStartTouch|activator = entity that caused this output|Fired when a valid entity starts touching this trigger.}}
{{O|OnStartTouch|activator = entity that caused this output|Fired when a valid entity starts touching this trigger.}}
{{bug|offset=1|Spamming crouch jumps in a trigger can randomly fire <code>OnStartTouch</code>. {{Confirm|Is it a Multiplayer issue only?}}}}
{{O|OnStartTouchAll|activator = entity that caused this output|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 <code>OnStartTouch</code> will fire.}}
{{O|OnStartTouchAll|activator = entity that caused this output|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 <code>OnStartTouch</code> will fire.}}
{{O|OnEndTouch|activator = entity that caused this output|Fired when a valid entity stops touching this trigger.
{{O|OnEndTouch|activator = entity that caused this output|Fired when a valid entity stops touching this trigger.
{{Warning|offset=1|This includes entities which are deleted while inside the trigger. In this case <tt>!activator</tt> will be invalid.}}
:{{Note|Will also fire for entities touching it when trigger is disabled via <code>Disable</code> input}}
{{Warning|offset=1|Will also fire if sent <code>Disable</code> input or an entity teleports outside of the trigger area.}}
:{{Warning|This includes entities which are deleted while inside the trigger. In this case <tt>!activator</tt> will be invalid.}}
{{Warning|offset=1|<code>OnEndTouch</code> can fire before <code>OnStartTouch</code> under certain circumstances where both are fired on the same tick and each have the '''same''' delay. {{fix|Add a slight delay to <code>OnEndTouch</code>.}}}}
:{{Warning|<code>OnEndTouch</code> can fire before <code>OnStartTouch</code> under certain circumstances{{how}} where both are fired on the same tick and each have the '''same''' delay. {{fix|Add a slight delay to <code>OnEndTouch</code>.}}}}
{{bug|offset=1|Spamming crouch jump in a trigger can randomly fire <code>OnEndTouch</code>.{{Confirm|Is it a Multiplayer issue only?}}}}
 
}}
}}
{{O|OnEndTouchAll|activator = entity that caused this output|Fired when ''all'' valid entities stop touching this trigger.}}
{{O|OnEndTouchAll|activator = entity that caused this output|Fired when ''all'' valid entities stop touching this trigger.}}

Revision as of 02:35, 22 April 2025

BaseTrigger
Icon-Bug.pngBug:Spamming crouch jumps in a trigger can randomly fire OnStartTouch/OnEndTouch.
Confirm:Is it a Multiplayer issue only?
  [todo tested in ?]


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.pngNote:Will also fire for entities touching it when trigger is disabled via Disable input
Warning.pngWarning:This includes entities which are deleted while inside the trigger. In this case !activator will be invalid.
Warning.pngWarning:OnEndTouch can fire before OnStartTouch under certain circumstances[How?] where both are fired on the same tick and each have the same delay.
Note.pngFix: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 Source 2007)
!activator = !caller = !self
Fired if something is currently touching this trigger when TouchTest is fired.
OnNotTouching  (in all games since Source 2007)
!activator = !caller = !self
Fired if nothing is currently touching this trigger when TouchTest is fired.