do: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (arma3 category)
m (<code> and note tidy + Moved example from "notes" to "examples")
Line 19: Line 19:
| [[Nothing]] |= Return value
| [[Nothing]] |= Return value
____________________________________________________________________________________________
____________________________________________________________________________________________
| x1 = <code>[[while]] {a>b} '''do''' {a<nowiki>=</nowiki>a+1} </code>
|x1= <code>'''[[while]]''' { a > b } [[do]] { a = a + 1 };</code>
|x2= A practical example: Repair all members of a group to such a level that they are able to stand up: <code>{
    [[while]] { ([[not]] [[canStand]] [[Magic Variables|_x]]) [[and]] ([[alive]] [[Magic Variables|_x]]) } [[do]] {
        [[Magic Variables|_x]] [[setDammage]] ([[getDammage]] [[Magic Variables|_x]]) - 0.01;
    };
} [[forEach]] [[units]] [[group]] unitname;</code> |= Example 2
 
| [[Control Structures]] |= See also
| [[Control Structures]] |= See also


Line 27: Line 33:
<dl class="command_description">
<dl class="command_description">
<!-- Note Section BEGIN -->
<!-- Note Section BEGIN -->
'''Note (Applies to 1.85-1.97):''' Maximum repeat count for loop is 10000.
<dd class="note">'''Note (Applies to 1.85-1.97):''' Maximum repeat count for loop is 10000.<br>If condition is still [[true]] after loop was repeated 10000 times, loop is terminated and error message is shown.
 
If condition is still [[true]] after loop was repeated 10000 times, loop is terminated and error message is shown.
 
 
A more practical example:
 
To repair all the members of a group to such a level that they are all able to stand up:<br>
{[[while]] {[[not]] [[canStand]] _x} [[do]] {_x [[setDammage]] ([[getDammage]] _x) - 0.01}} [[forEach]] units [[group]] ''unitname''


<!-- Note Section END -->
<!-- Note Section END -->

Revision as of 19:12, 29 March 2014

Hover & click on the images for description

Description

Description:
Repeat code while condition is true.
Groups:
Uncategorised

Syntax

Syntax:
while do code
Parameters:
while: While Type
code: Code
Return Value:
Nothing

Examples

Example 1:
while { a > b } do { a = a + 1 };
Example 2:
A practical example: Repair all members of a group to such a level that they are able to stand up: { while { (not canStand _x) and (alive _x) } do { _x setDammage (getDammage _x) - 0.01; }; } forEach units group unitname;

Additional Information

See also:
Control 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

Note (Applies to 1.85-1.97): Maximum repeat count for loop is 10000.
If condition is still true after loop was repeated 10000 times, loop is terminated and error message is shown.

Bottom Section