or: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - " <h3 style="display:none">Notes</h3> <dl class="command_description"> <!-- Note Section BEGIN --> <!-- Note Section END --> </dl> " to "")
m (Text replacement - " *\| *([Cc]omments|COMMENTS|Game|[Gg]ame [Nn]ame|Game [Vv]ersion|Game Version \(number surrounded by NO SPACES\)|Multiplayer Arguments( \("local" or "global"\))?|Effects|Multiplayer Effects( \("local" or "global"\))?|Multiplayer Exe...)
Line 1: Line 1:
{{Command|Comments=
{{Command


| ofp |Game name=
| ofp


|1.00|Game version=
|1.00


|gr1= Math |GROUP1=
|gr1= Math


|gr2= Variables |GROUP2=
|gr2= Variables


| Returns [[true]] if one or both conditions are [[true]]. In case of the alternative syntax, [http://en.wikipedia.org/wiki/Lazy_evaluation#Control_structures lazy evaluation] is used (if left operand is [[true]], evaluation of the right side is skipped completely).
| Returns [[true]] if one or both conditions are [[true]]. In case of the alternative syntax, [http://en.wikipedia.org/wiki/Lazy_evaluation#Control_structures lazy evaluation] is used (if left operand is [[true]], evaluation of the right side is skipped completely).


{{Informative | Identical to [[a or b|a || b]].}} |DESCRIPTION=
{{Informative | Identical to [[a or b|a || b]].}}


| a [[or]] b |SYNTAX=
| a [[or]] b


|p1= a: [[Boolean]] - test condition or variable |PARAMETER1=
|p1= a: [[Boolean]] - test condition or variable


|p2= b: [[Boolean]] - test condition or variable |PARAMETER2=
|p2= b: [[Boolean]] - test condition or variable


| [[Boolean]] |RETURNVALUE=
| [[Boolean]]


|s2= a [[or]] b {{Since|arma2oa|1.62|y}} |SYNTAX2=
|s2= a [[or]] b {{Since|arma2oa|1.62|y}}


|p21= a: [[Boolean]] - test condition or variable |PARAMETER21=
|p21= a: [[Boolean]] - test condition or variable |PARAMETER21=
Line 27: Line 27:
|p22= b: [[Code]] - code that returns [[Boolean]]; it is not evaluated if ''a'' returns [[true]] |PARAMETER22=
|p22= b: [[Code]] - code that returns [[Boolean]]; it is not evaluated if ''a'' returns [[true]] |PARAMETER22=


|r2= [[Boolean]] |RETURNVALUE2=
|r2= [[Boolean]]


|x1= <code>[[if]] (_obj1 [[or]] (_enemycount [[==]] 0) [[or]] ([[not]] [[alive]] _enemyGeneral)) [[then]] { [[hint]] "you win !"; };</code> |EXAMPLE1=
|x1= <code>[[if]] (_obj1 [[or]] (_enemycount [[==]] 0) [[or]] ([[not]] [[alive]] _enemyGeneral)) [[then]] { [[hint]] "you win !"; };</code>


|x2= <code>{{cc|without lazy evaluation, [[select]] would throw an error in the event of an empty array}}
|x2= <code>{{cc|without lazy evaluation, [[select]] would throw an error in the event of an empty array}}
Line 35: Line 35:
{
{
[[hint]] "It works!";
[[hint]] "It works!";
};</code> |EXAMPLE2=
};</code>


| [[a or b|a || b]], [[and]], [[Operators]]|SEEALSO=
| [[a or b|a || b]], [[and]], [[Operators]]
}}
}}



Revision as of 01:38, 18 January 2021

Hover & click on the images for description

Description

Description:
Returns true if one or both conditions are true. In case of the alternative syntax, lazy evaluation is used (if left operand is true, evaluation of the right side is skipped completely).
Identical to a || b.
Groups:
MathVariables

Syntax

Syntax:
a or b
Parameters:
a: Boolean - test condition or variable
b: Boolean - test condition or variable
Return Value:
Boolean

Alternative Syntax

Syntax:
a or b Template:Since
Parameters:
a: Boolean - test condition or variable
b: Code - code that returns Boolean; it is not evaluated if a returns true
Return Value:
Boolean

Examples

Example 1:
if (_obj1 or (_enemycount == 0) or (not alive _enemyGeneral)) then { hint "you win !"; };
Example 2:
// without lazy evaluation, select would throw an error in the event of an empty array if ((count _array == 0) or { (_array select 0) != player }) then { hint "It works!"; };

Additional Information

See also:
a || bandOperators

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

Bottom Section