OnTriggerEnter - ObjectReference

From the CreationKit Wiki
Revision as of 06:41, 9 October 2021 by imported>Rasikko (→‎Notes)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Member of: ObjectReference Script (Papyrus)

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

Syntax

Event OnTriggerEnter(ObjectReference akActionRef)

Parameters

Examples

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

Notes

  • 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