a && b: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - "{{since" to "{{Since")
m (Text replacement - "_{10,} " to "")
Line 1: Line 1:
{{Command|Comments=
{{Command|Comments=
____________________________________________________________________________________________


| ofp |Game Name=
| ofp |Game Name=
Line 8: Line 7:
|gr1= Math |GROUP1=
|gr1= Math |GROUP1=
|gr2= Variables |GROUP2=
|gr2= Variables |GROUP2=
____________________________________________________________________________________________


| Returns [[true]] only if 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 [[false]], evaluation of the right side is skipped completely).
| Returns [[true]] only if 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 [[false]], evaluation of the right side is skipped completely).


{{Informative | This command is identical to the [[and]] command.}} |DESCRIPTION=
{{Informative | This command is identical to the [[and]] command.}} |DESCRIPTION=
____________________________________________________________________________________________


| booleanA [[a && b|&&]] booleanB |SYNTAX=
| booleanA [[a && b|&&]] booleanB |SYNTAX=
Line 22: Line 19:


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


|s2=  boolean [[a && b|&&]] code {{Since|arma2oa|1.62|y}} |SYNTAX2=
|s2=  boolean [[a && b|&&]] code {{Since|arma2oa|1.62|y}} |SYNTAX2=
Line 31: Line 27:


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


|x1= <code>[[private]] _allEnemiesKilled = [[true]];
|x1= <code>[[private]] _allEnemiesKilled = [[true]];
Line 48: Line 43:
[[hint]] "It works!";
[[hint]] "It works!";
};</code> |EXAMPLE3=
};</code> |EXAMPLE3=
____________________________________________________________________________________________


| [[and]], [[or]], [[Operators]] |SEEALSO=
| [[and]], [[or]], [[Operators]] |SEEALSO=

Revision as of 01:00, 17 January 2021

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).
This command is identical to the and command.
Groups:
MathVariables

Syntax

Syntax:
booleanA && booleanB
Parameters:
booleanA: Boolean - test condition or variable
booleanB: Boolean - test condition or variable
Return Value:
Boolean

Alternative Syntax

Syntax:
boolean && code Template:Since
Parameters:
boolean: Boolean - test condition or variable
code: Code - code that once executed returns a Boolean. The code is not evaluated if boolean is false.
Return Value:
Boolean

Examples

Example 1:
private _allEnemiesKilled = true; if (alive player && _allEnemiesKilled) then { hint "you win !"; };
Example 2:
if ((count _array > 0) && { (_array select 0) == player }) then // an error would be thrown without lazy evaluation { hint "It works!"; };
Example 3:
if ((alive player) && { player setDamage 0.5; true }) then // valid as long as the code block returns a Boolean { hint "It works!"; };

Additional Information

See also:
andorOperators

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