Difference between revisions of "OnTriggerEnter - ObjectReference"

From the CreationKit Wiki
Jump to navigation Jump to search
imported>Thorskin
imported>Rasikko
 
Line 47: Line 47:


*If you set a trigger around a teleport door marker this event will fire for the player but not for NPCs.
*If you set a trigger around a teleport door marker this event will fire for the player but not for NPCs.
*The collision layer associated with a primitive containing the script for this event doesn't detect dead actors.


== See Also ==
== See Also ==

Latest revision as of 06:41, 9 October 2021

Member of: ObjectReference Script (Papyrus)

Event called when the object reference is a trigger volume and has been entered.

Syntax[edit | edit source]

Event OnTriggerEnter(ObjectReference akActionRef)

Parameters[edit | edit source]

Examples[edit | edit source]

Event OnTriggerEnter(ObjectReference akActionRef)
  Debug.Trace(akActionRef + " just entered us!")
EndEvent

Notes[edit | edit source]

  • This event can be received out of order with OnTriggerLeave, so it's ideal to keep a count instead of a simple true/false value for when things are inside the trigger.
Int InTrigger = 0

Event OnTriggerEnter(ObjectReference akTriggerRef)
	if (InTrigger == 0)
		if akTriggerRef == Game.GetPlayer()
			InTrigger += 1
			debug.notification("Entered Trigger")
		endif
	endif
EndEvent

Event OnTriggerLeave(ObjectReference akTriggerRef)
	if (InTrigger > 0)
		if akTriggerRef == Game.GetPlayer()
			InTrigger -= 1
			debug.notification("Leaving Trigger")
		endif
	endif
EndEvent
  • If you set a trigger around a teleport door marker this event will fire for the player but not for NPCs.
  • The collision layer associated with a primitive containing the script for this event doesn't detect dead actors.

See Also[edit | edit source]