a = b: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - "<dd class="note">([^}]*)<code>([^<]*)<\/code>" to "<dd class="note">$1<sqf>$2</sqf>")
m (Some wiki formatting)
Line 48: Line 48:
}}
}}


<dl class="command_description">
{{Note
|user= Kronzky
|timestamp= 20061215052700
|text= A conditional assignment can be done via the following syntax:
<sqf>_msg = if (alive player) then {"you're alive"} else {"you're dead"}</sqf>
}}


<dt></dt>
{{Note
<dd class="notedate">Posted on December 15, 2006 - 05:27</dd>
|user= Alef
<dt class="note">[[User:Kronzky|Kronzky]]</dt>
|timestamp= 20090622162700
<dd class="note">A conditional assignment can be done via the following syntax:
|text= It's possible to assign to [[Number|numbers]]. Numbers values are not changed. Useful instead of assigning to ''nul'' or ''nil'' when a result is of no use.
<code>_msg <nowiki>=</nowiki> if (alive player) then {"you're alive"} else {"you're dead"}</code>
<sqf>[player] execVM "myScript.sqf"</sqf>
<dd class="notedate">Posted on June 22, 2009 - 16:27</dd>
}}
<dt class="note">[[User:Alef|Alef]]</dt>
<dd class="note">It's possible to assign to [[Number|numbers]]. Numbers values are not changed. Useful instead of assigning to ''nul'' or ''nil'' when a result is of no use.
<code>0 <nowiki>=</nowiki> [player] execVM "myScript.sqf"</code>
</dd>


<dt></dt>
{{Note
<dd class="notedate">Posted on November 9, 2016 - 00:29 (UTC)</dd>
|user= Dedmen
<dt class="note">[[User:Dedmen|Dedmen]]</dt>
|timestamp= 20161109002900
<dd class="note">
|text= This operator actually does not return a Nil. It really returns pure Nothing. Not Nil Nothing.<br>
This operator actually does not return a Nil. It really returns pure Nothing. Not Nil Nothing.<br>
This can cause problems. For example:
This can cause problems. For example:
<sqf>_var1 = call {
<sqf>
_var1 = call {
_var2 = "";
_var2 = "";
};</sqf>
};
</sqf>
The return value of the "call" is the return value of the "<nowiki>=</nowiki>" operator.<br>
The return value of the "call" is the return value of the "<nowiki>=</nowiki>" operator.<br>
If it were a nil then of cause "_var <nowiki>=</nowiki> nil;" would work just fine.<br>
If it were a nil then of cause "_var <nowiki>=</nowiki> nil;" would work just fine.<br>
But in reality this causes a "Generic Error in expression" because you can't assign pure Nothing to anything.<br>
But in reality this causes a "Generic Error in expression" because you can't assign pure Nothing to anything
</dd>
}}
 
</dl>

Revision as of 12:13, 13 May 2022

Hover & click on the images for description

Description

Description:
Assigns the result of expression on the right to the variable on the left. Technically this is not a command and it is not listed in supportInfo; this is more of a compiler instruction.
The following structure is invalid: a = b = c = 4;
Groups:
Variables

Syntax

Syntax:
variable = value
Parameters:
variable: Anything - see Identifier
value: Anything
Return Value:
Nothing
The returned value is not equivalent to nil. See Notes below for additional information.

Examples

Example 1:
_value = 5
Example 2:
_mygroup = group player
Example 3:
_greeting = "Hello!"
Example 4:
private _enemyTank = myTank1

Additional Information

See also:
Operators

Notes

Report bugs on the Feedback Tracker and/or discuss them on the Arma Discord or on the Forums.
Only post proven facts here! Add Note
Kronzky - c
Posted on Dec 15, 2006 - 05:27 (UTC)
A conditional assignment can be done via the following syntax:
_msg = if (alive player) then {"you're alive"} else {"you're dead"}
Alef - c
Posted on Jun 22, 2009 - 16:27 (UTC)
It's possible to assign to numbers. Numbers values are not changed. Useful instead of assigning to nul or nil when a result is of no use.
[player] execVM "myScript.sqf"
Dedmen - c
Posted on Nov 09, 2016 - 00:29 (UTC)
This operator actually does not return a Nil. It really returns pure Nothing. Not Nil Nothing.
This can cause problems. For example:
_var1 = call { _var2 = ""; };
The return value of the "call" is the return value of the "=" operator.
If it were a nil then of cause "_var = nil;" would work just fine.
But in reality this causes a "Generic Error in expression" because you can't assign pure Nothing to anything