and: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
(Added lazy evaluation syntax)
(Added description to parameters and links to commands used in examples to unify the page with a && b.)
Line 11: Line 11:


| [[Boolean]] <nowiki>=</nowiki> a '''and''' b |= Syntax
| [[Boolean]] <nowiki>=</nowiki> a '''and''' b |= Syntax
|p1= a: [[Boolean]]|= Parameter 1
|p1= a: [[Boolean]] - Test condition or variable that returns [[Boolean]]. |= Parameter 1
|p2= b: [[Boolean]]|= Parameter 2
|p2= b: [[Boolean]] - Test condition or variable that returns [[Boolean]]. |= Parameter 2
| [[Boolean]] |= Return value
| [[Boolean]] |= Return value


Line 18: Line 18:


|s2= [[Boolean]] <nowiki>=</nowiki> a '''and''' b (''Only available since ArmA 2:OA v1.62.'') |= Syntax
|s2= [[Boolean]] <nowiki>=</nowiki> a '''and''' b (''Only available since ArmA 2:OA v1.62.'') |= Syntax
|p21= a: [[Boolean]]|= Parameter 1
|p21= a: [[Boolean]] - Test condition or variable that returns [[Boolean]]. |= Parameter 1
|p22= b: [[Code]] - Code that returns [[Boolean]]. It is not evaluated if '''a''' returns as true. |= Parameter 2
|p22= b: [[Code]] - Code that returns [[Boolean]]. It is not evaluated if '''a''' returns as true. |= Parameter 2
|r2= [[Boolean]] |= Return value
|r2= [[Boolean]] |= Return value
____________________________________________________________________________________________
____________________________________________________________________________________________
   
   
|x1= <pre>if ((alive player) and (_enemycount == 0)) then {hint "you win !"}</pre> |= Example 1
|x1= <code>[[if]] (([[alive]] [[player]]) and (_enemycount == 0)) then {[[hint]] "you win !"}</code> |= Example 1
|x2= <pre>if ((count _array > 0) and {(_array select 0) == player}) then {hint "It works! Without lazy evaluation it would throw an error if array was empty."}</pre> |= Example 2
|x2= <code>[[if]] (([[count]] _array > 0) and {(_array [[select]] 0) == [[player]]}) then {[[hint]] "It works! Without lazy evaluation it would throw an error if array was empty."}</code> |= Example 2


|mp= no special considerations|=
|mp= no special considerations|=

Revision as of 11:37, 9 August 2012

Hover & click on the images for description

Description

Description:
Returns "true" only if both conditions are true. In case of the alternative syntax, lazy evaluation is used (if left operand is false, evaluation of the right side is skipped completely).
Multiplayer:
no special considerations
Groups:
Uncategorised

Syntax

Syntax:
Boolean = a and b
Parameters:
a: Boolean - Test condition or variable that returns Boolean.
b: Boolean - Test condition or variable that returns Boolean.
Return Value:
Boolean

Alternative Syntax

Syntax:
Boolean = a and b (Only available since ArmA 2:OA v1.62.)
Parameters:
a: Boolean - Test condition or variable that returns Boolean.
b: Code - Code that returns Boolean. It is not evaluated if a returns as true.
Return Value:
Boolean

Examples

Example 1:
if ((alive player) and (_enemycount == 0)) then {hint "you win !"}
Example 2:
if ((count _array > 0) and {(_array select 0) == player}) then {hint "It works! Without lazy evaluation it would throw an error if array was empty."}

Additional Information

See also:
a && borOperators

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

Bottom Section