Magic Variables: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
mNo edit summary
Line 2: Line 2:
=== Introduction ===
=== Introduction ===


'''Magic variables''' are [[Variables|variables]] that serve a specific purpose within a given scope and are often used by the engine to push data to a given [[Script (File)|script]] or [[Code|code]]. They are usually no longer present after leaving the scope (e.g. after script execution, or after a [[forEach]] statement).
'''Magic variables''' are engine maintained [[Variables|variables]] that serve a specific purpose within a given scope and are often used by the engine to push data to a given [[Script (File)|script]] or [[Code|code]] fragment. They are usually no longer present after leaving the scope (e.g. after code execution, or after a [[forEach]] statement).


The most frequently used magic variable probably is <tt>_[[this]]</tt>, which is used to make execution arguments accessible to a script.
=== Uses ===
Other uses of magic variables can be seen in [[forEach]], where the current element can be accessed via <tt>_x</tt>. [[Triggers]] also define <tt>thislist</tt>, which is however only accessible within the activation or deactivation script in the editor.
 
*The most frequently used magic variable probably is <tt>_[[this]]</tt>, which is used to make arguments of a script call ([[call]], [[exec]], [[execVM]], [[spawn]]) visible and accessible to the script.
*Other uses of magic variables can be seen in [[forEach]], where the current element can be accessed via <tt>_x</tt>.
*[[Triggers]] also define <tt>thislist</tt>, which is however only accessible within the activation or deactivation script in the editor.
* [[Exception handling]] using a [[try]]..[[catch]] statement usually declare a magic variable named <tt>_exception</tt>, which contains details about the exception [[throw]]n in the try-block.

Revision as of 19:19, 5 May 2007

Template:Stub

Introduction

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).

Uses

  • The most frequently used magic variable probably is _this, which is used to make arguments of a script call (call, exec, execVM, spawn) visible and accessible to the script.
  • Other uses of magic variables can be seen in forEach, where the current element can be accessed via _x.
  • Triggers also define thislist, which is however only accessible within the activation or deactivation script in the editor.
  • Exception handling using a try..catch statement usually declare a magic variable named _exception, which contains details about the exception thrown in the try-block.