Difference between revisions of "getVariable"

From Bohemia Interactive Community
Jump to navigation Jump to search
(removed case-sensitive mention, because it is NOT)
Line 7: Line 7:
 
____________________________________________________________________________________________
 
____________________________________________________________________________________________
  
| Return the value of variable in the variable space of given object or location.
+
| Return the value of variable in the variable space of given object or location. In case of Alt Syntax usage in Arma 3, the default value will be returned if:
 +
* Requested variable is either undefined or [[nil]]
 +
* Variable namespace is null ([[objNull, grpNull, etc.) 
 
<br>
 
<br>
 
<br>
 
<br>
Line 97: Line 99:
 
<dt class="note">[[User:Ebay|Ebay]]</dt>
 
<dt class="note">[[User:Ebay|Ebay]]</dt>
 
<dd class="note">
 
<dd class="note">
 +
'''NOTE: Arma 2 ONLY! In Arma 3 this will return default value'''.
 
Warning: the alternative syntax returns undefined when the varspace is an object and that object is null. Example:<br />
 
Warning: the alternative syntax returns undefined when the varspace is an object and that object is null. Example:<br />
 
<code>_test = objNull getVariable ["test","0"];
 
<code>_test = objNull getVariable ["test","0"];

Revision as of 19:22, 18 January 2017

{{Command|= Comments ____________________________________________________________________________________________

| arma |= Game name |1.00|= Game version |arg= global|= Arguments in MP ____________________________________________________________________________________________

| Return the value of variable in the variable space of given object or location. In case of Alt Syntax usage in Arma 3, the default value will be returned if:

  • Requested variable is either undefined or nil
  • Variable namespace is null ([[objNull, grpNull, etc.)



All available data types combinations:

____________________________________________________________________________________________

| varspace getVariable name |= Syntax

|p1= varspace: Namespace, Object, Display, Control, Group, Location, Task or Team Member |= Parameter 1

|p2= name: String - Variable name that was defined in setVariable |= Parameter 2

| Anything or Nothing if the variable doesn't exist |= Return value ____________________________________________________________________________________________

|s2= varspace getVariable [name, defaultValue] |= Syntax

|p21= varspace: Namespace, Object, Display, Control, Group or Team Member |= Parameter 1

|p22= name: String - Variable name that was defined in setVariable |= Parameter 2

|p23= defaultValue: Anything - Value to return if variable doesn't exist |= Parameter 3

|r2= Anything or defaultValue if the variable doesn't exist.
Note: If the varspace is nonexistent (objNull, grpNull, controlNull ..etc), return is nil |= Return value 2 ____________________________________________________________________________________________

|x1= _thePublicVariable = _myTruck getVariable "myPublicVariable"; |= Example 1

|x2= _aLocalVariable = _myTruck getVariable ["myLocalVariable", ["Not set", _var]] select 1; |= Example 2

|x3= for "_i" from 0 to 5 do {

   _car = missionNamespace getVariable ("car" + str _i);
   _car setDamage 0;

}; Sets damage of car0, car1, ..., car5 to 0. |= Example 3

|x4= myMissionVar = 2015; missionNamespace getVariable "myMissionVar";//Returns 2015|= Example 4

|x5= WARNING when using dynamic default value: missionNamespace getVariable ["var", 123 call fnc_abc]; /// fnc_abc is always called even when var is defined|=

|x6= Get current value of a variable and if it is undefined, define it and get the defined value:private _var = missionNamespace getVariable "varName"; if (isNil "_var") then { missionNamespace setVariable ["varName", 123]; _var = 123; }; // _var here will contain current value of the variable varName |= Example 6 ____________________________________________________________________________________________

| setVariable, allVariables |= See also

}}

Notes

Bottom Section

Posted on August 13, 2016 - 17:13 (UTC)
Ebay
NOTE: Arma 2 ONLY! In Arma 3 this will return default value. Warning: the alternative syntax returns undefined when the varspace is an object and that object is null. Example:
_test = objNull getVariable ["test","0"]; systemChat _test; Errors because _test is undefined. Tested in A2OA 1.63.131129