and: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
mNo edit summary
m (template:command argument fix)
(35 intermediate revisions by 14 users not shown)
Line 1: Line 1:
[[Category:Scripting Commands|AND]]
{{Command|= Comments
[[Category:Scripting Commands OFP 1.97|AND]]
____________________________________________________________________________________________
[[Category:Scripting Commands OFP 1.46|AND]]
 
[[Category:Scripting Commands ArmA|AND]]
| ofp |= Game name


|1.00|= Game version
____________________________________________________________________________________________


<h2 style="color:#000066">'''''a'' and ''b'''''</h2>
| 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). |DESCRIPTION=
____________________________________________________________________________________________


| [[Boolean]] <nowiki>=</nowiki> a '''and''' b |SYNTAX=
|p1= a: [[Boolean]] - Test condition or variable that returns [[Boolean]]. |PARAMETER1=
|p2= b: [[Boolean]] - Test condition or variable that returns [[Boolean]]. |PARAMETER2=
| [[Boolean]] |RETURNVALUE=


'''Operand types:'''


'''a:''' [[Boolean]]


'''b:''' [[Boolean]]
|s2= [[Boolean]] <nowiki>=</nowiki> a '''and''' b (''Only available since ArmA 2:OA v1.62.'') |SYNTAX=
|p21= a: [[Boolean]] - Test condition or variable that returns [[Boolean]]. |PARAMETER1=
|p22= b: [[Code]] - Code that returns [[Boolean]]. It is not evaluated if '''a''' returns as [[false]]. |PARAMETER2=
|r2= [[Boolean]] |RETURNVALUE=
____________________________________________________________________________________________
 
|x1= <code>[[if]] (([[alive]] [[player]]) and (_enemycount == 0)) then {[[hint]] "you win !"}</code> |EXAMPLE1=
|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> |EXAMPLE2=


'''Type of returned value:'''
|mp= no special considerations|=
____________________________________________________________________________________________


[[Boolean]]
| [[a && b]], [[or]], [[Operators]] |SEEALSO=


'''Description:'''
}}


'''a''' and '''b'''
<h3 style="display:none">Notes</h3>
<dl class="command_description">
<!-- Note Section BEGIN -->
<!-- Note Section END -->
</dl>


<h3 style="display:none">Bottom Section</h3>


'''Example:'''
[[Category:Scripting Commands|AND]]
[[Category:Scripting Commands OFP 1.99|AND]]
[[Category:Scripting Commands OFP 1.96|AND]]
[[Category:Scripting Commands OFP 1.46|AND]]
[[Category:Scripting Commands ArmA|AND]]
[[Category:Command_Group:_Math|{{uc:{{PAGENAME}}}}]]
[[Category:Scripting Commands ArmA2|{{uc:{{PAGENAME}}}}]]
[[Category:Scripting Commands Arma 3|{{uc:{{PAGENAME}}}}]]
[[Category:Scripting_Commands_Take_On_Helicopters|{{uc:{{PAGENAME}}}}]]


[[alive]] [[player]] '''and''' [[alive]] [[leader unit]] [[player]]
<!-- CONTINUE Notes -->
<dl class="command_description">
<dd class="notedate">Posted on April 12, 2015 - 10:45 (UTC)</dd>
<dt class="note">[[User:IT07|IT07]]</dt>
<dd class="note">
Just like the "or" command, the "and" command allows several conditions to be checked. Example: <br>
<code>if(alive player and speed player > 0 and _someOtherVar) then { hint"All three condtions are true" };</code>
The example above will check if the player is alive and if the player is moving and checks if _someOtherVar is true.
</dd>
</dl>
<!-- DISCONTINUE Notes -->

Revision as of 15:28, 7 April 2019

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 false.
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

Posted on April 12, 2015 - 10:45 (UTC)
IT07
Just like the "or" command, the "and" command allows several conditions to be checked. Example:
if(alive player and speed player > 0 and _someOtherVar) then { hint"All three condtions are true" }; The example above will check if the player is alive and if the player is moving and checks if _someOtherVar is true.