Magic Variables: Difference between revisions
Lou Montana (talk | contribs) |
Killzone Kid (talk | contribs) No edit summary |
||
Line 7: | Line 7: | ||
{{ConfigPage|abc}} | {{ConfigPage|abc}} | ||
==== _this ==== | ==== _this ==== | ||
Is used to make arguments of a script call ([[call]], [[exec]], [[execVM]], [[spawn]]) visible and accessible to the script. | Is used to make arguments of a script call ([[call]], [[exec]], [[execVM]], [[spawn]]) visible and accessible to the script, also used in Event Handlers to pass appropriate params. | ||
Line 24: | Line 24: | ||
==== _forEachIndex ==== | ==== _forEachIndex ==== | ||
Represents the (zero-based) index of a [[forEach]] [[#x|_x]] element. | Represents the (zero-based) index of a [[forEach]] [[#x|_x]] element. | ||
{{ArgTitle|_thisEventHandler|4|{{GVI|arma3|1.54}}}} | {{ArgTitle|_thisEventHandler|4|{{GVI|arma3|1.54}}}} | ||
The index for Event Handlers added with [[addEventHandler]], [[addMPEventHandler]] or [[addMissionEventHandler]]. | The index for Event Handlers added with [[addEventHandler]], [[addMPEventHandler]] or [[addMissionEventHandler]]. | ||
{{ArgTitle|_thisEvent|4|{{GVI|arma3|2.06}}}} | |||
The name of the Event added with [[addEventHandler]], [[addMPEventHandler]] or [[addMissionEventHandler]] as well as for config types EHs. | |||
{{ArgTitle|_thisArgs|4|{{GVI|arma3|2.04}}}} | {{ArgTitle|_thisArgs|4|{{GVI|arma3|2.04}}}} |
Revision as of 20:01, 14 June 2021
Magic variables are engine-maintained variables that serve a specific purpose within a given scope and are often used by the engine to push data to a given script or code fragment.
They are usually no longer present after leaving the scope (e.g. after code execution or after a forEach statement).
_this
Is used to make arguments of a script call (call, exec, execVM, spawn) visible and accessible to the script, also used in Event Handlers to pass appropriate params.
_x
Represents the current element during a loop with: apply, count, configClasses, configProperties, findIf, forEach, select.
4
Iterating over a HashMap with forEach will return the key as _x and the value as _y.
4
Exception handling using a try-catch statement declares this variable which contains details about the thrown exception in the try block.
_forEachIndex
Represents the (zero-based) index of a forEach _x element.
4
The index for Event Handlers added with addEventHandler, addMPEventHandler or addMissionEventHandler.
4
The name of the Event added with addEventHandler, addMPEventHandler or addMissionEventHandler as well as for config types EHs.
4
Additional Event Handler arguments available with addMissionEventHandler
4
The FSM id for FSMs executed with execFSM.
4
The called or spawned script handle from within itself.
_time
SQS ONLY. The time elapsed since the script started running.
4
From within a Function, the TAG_fnc_functionName function name as string (e.g. "myTag_fnc_myFunction")
4
From within a Function, name of the function that called the current one (_fnc_scriptName used when not defined)
this
- In Addons' config files (e.g. UserActions, onInit, etc.): The object the entry belongs to
- In Dialogs: The player unit that activated control (e.g. via mouseEnter). false if non-activated
- In Object's "Init" line: The object the init line belongs to
- In Triggers
- In Waypoints
- "Condition" or "On Activation/Deactivation" line: The group leader that completed the respective waypoint (or driver, if waypoint is assigned to a vehicle)
thisList
Variable defined by Triggers and Waypoints:
- Triggers:
- accessible within the Condition, On Activation or On Deactivation script
- defines an array of objects that have been detected by the trigger (same as what is returned by the list command)
- thisList in a trigger's On Deactivation field seems to be undefined, and should not be used. It will either return an empty array, or possibly the contents of a different trigger.
- Waypoints:
- accessible within the Condition or On Activation script
- defines an array containing all group members that completed the respective waypoint
thisTrigger
Refers to the trigger object itself - accessible within the Condition, On Activation or On Deactivation script.