Template:O BaseTrigger: Difference between revisions

From Valve Developer Community
Jump to navigation Jump to search
m (Fix)
(seems invalid)
 
(13 intermediate revisions by 5 users not shown)
Line 1: Line 1:
{{minititle|BaseTrigger}}
{{expand|title=BaseTrigger|startcollapsed={{{startcollapsed|1}}}|noborder={{#ifeq:{{{startcollapsed}}}|0|1|0}}|bgcolor=initial|
{{IO|OnStartTouch|Fired when a valid entity starts touching this trigger. {{ent|!activator}} is whatever touches the trigger.}}
{{O|OnStartTouch|activator = entity that caused this output|Fired when a valid entity starts touching this trigger.}}
{{IO|OnStartTouchAll|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.}}
{{IO|OnEndTouch|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.
{{IO|OnEndTouchAll|Fired when ''all'' valid entities stop touching this trigger.}}
:{{Note|Will also fire for entities touching it when trigger is disabled via <code>Disable</code> input}}
{{IO|OnTouching|since={{Src07}}|Fired if something is currently touching this trigger when <code>TouchTest</code> is fired.}}
:{{Warning|This includes entities which are deleted while inside the trigger. In this case <tt>!activator</tt> will be invalid.}}
{{IO|OnNotTouching|since={{Src07}}|Fired if nothing is currently touching this trigger when <code>TouchTest</code> is fired.}}<noinclude>
:{{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>.}}}}
}}
{{O|OnEndTouchAll|activator = entity that caused this output|Fired when ''all'' valid entities stop touching this trigger.}}
{{O|OnTouching|ac-is-this=1|since={{Src07}}|Fired if something is currently touching this trigger when <code>TouchTest</code> is fired.}}
{{O|OnNotTouching|ac-is-this=1|since={{Src07}}|Fired if nothing is currently touching this trigger when <code>TouchTest</code> is fired.}}}}<noinclude>
[[Category:Output Templates|BaseTrigger]]
[[Category:Output Templates|BaseTrigger]]
</noinclude>
</noinclude>

Latest revision as of 13:19, 1 June 2025

BaseTrigger
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 = this entity
Fired if something is currently touching this trigger when TouchTest is fired.
OnNotTouching  (in all games since Source 2007)
!activator = !caller = this entity
Fired if nothing is currently touching this trigger when TouchTest is fired.