GetActionRef
Syntax:
set refVar to GetActionRef
Returns the reference currently interacting with the scripted object. Valid only when the object is being activated or triggered. It will only return a value during the frame after the object has been interacted with. This means it is generally only useful inside an OnActivate or OnTrigger block. If more than one object is interacting with the object (for instance, several objects colliding with the same trigger zone), only the most recently interacting object will be returned by this function.
Clarification: GetActionRef puts the current action ref into a ref variable. IsActionRef checks to see if the given ref is our action ref. The action ref is whatever ref is responsible for the most recent script action (ie: in an OnActivate block, its the ref that activated the scripted object, in an OnTriggerEnter, its the ref that entered the trigger, etc).
- this is GOOD. stores our action ref in a ref variable for later use
ref actorref set actorref to GetActionRef
- this is GOOD. check to see if the player is our action ref
if ( IsActionRef player == 1.0 ) endif
- this is BAD. because the code is in an expression block its not
- evaluated at compile time. but when we evaluate the expression
- when the script runs, it will generate an error and shut down the script
if ( GetActionRef player == 1.0 ) endif