if: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
(Established alternative syntax per proper command template procedure >> should be checked <<)
m (note formate)
Line 46: Line 46:
<dd class="notedate">Posted on Jan 17, 2010 - 02:40
<dd class="notedate">Posted on Jan 17, 2010 - 02:40
<dt class="note">'''[[User:Galzohar|Galzohar]]'''<dd class="note">
<dt class="note">'''[[User:Galzohar|Galzohar]]'''<dd class="note">
If the condition is nil then neither the "then" nor the "else" section get executed, but the script will proceed with no error messages.<br><br>
(A2 1.05) If the condition is nil then neither the "then" nor the "else" section get executed, but the script will proceed with no error messages.<br><br>
Example code:
Example code:
<code>
<code>
hint "script started"; //will get executed
[[hint]] "script started"; //will get executed
if (nil) then
[[if]] (nil) [[then]]
{
{
hint "true"; // will never get executed
[[hint]] "true"; // will never get executed
}
}
else
[[else]]
{
{
hint "false"; // will never get executed
[[hint]] "false"; // will never get executed
};
};
sleep 3;
[[sleep]] 3;
hint "script ended"; //will get executed</code>
[[hint]] "script ended"; //will get executed</code>
Tested on Arma 2 vanilla 1.05.
<!-- Note Section END -->
<!-- Note Section END -->
</dl>
</dl>

Revision as of 04:53, 4 August 2014

Hover & click on the images for description

Description

Description:
The standard if, then, else construct available in many languages. This syntax however has alternate forms in the manner of an Array.
  • if (condition) then { code } else { code }
  • if (condition) then [ { code }, { code } ]
Result of the Code executed is returned as the result to this command (which may be Nothing}.
Groups:
Uncategorised

Syntax

Syntax:
Anything = if (condition) then { Code } else { Code }
Parameters:
condition: Boolean expression. If it evaluates as 'true', the 'then' clause is executed. Otherwise, the 'else' clause (if present) is executed.
Return Value:
If Type - Predicate which will execute 1st or 2nd option when used. This predicate is used in then or exitWith commands.

Alternative Syntax

Syntax:
Anything = if (condition) then [ { ThenCode } , { ElseCode } ]
Parameters:
condition: Boolean expression. If it evaluates as 'true', the 'then' clause is executed. Otherwise, the 'else' clause (if present) is executed.
Return Value:
If Type - Predicate which will execute 1st or 2nd option when used. This predicate is used in then or exitWith commands.

Examples

Example 1:
_retVal = if (1 > 0) then { "It's true" } else { "It's false" }; hint str _retVal
Example 2:
_val = if (true) then [ { "true" }, { "false" } ]; hint _val;

Additional Information

See also:
elseexitWiththenControl Structures

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

Notes

Posted on Jan 31, 2007 - 04:08
Ceeeb
Any _local variables you declare within the body of an if/then statement (ie between the curly braces) are local to that 'if' statement, and are destroyed at the end of the statement. If you know you want to use the variable outside the 'if' statement, make sure your declare it before the 'if' statement.
Posted on Jan 17, 2010 - 02:40
Galzohar
(A2 1.05) If the condition is nil then neither the "then" nor the "else" section get executed, but the script will proceed with no error messages.

Example code: hint "script started"; //will get executed if (nil) then { hint "true"; // will never get executed } else { hint "false"; // will never get executed }; sleep 3; hint "script ended"; //will get executed

Bottom Section