findIf: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Fixed examples)
(note format)
Line 9: Line 9:
| Searches for an element within array for which the code evaluates to true. Returns the 0 based index on success or -1 if not found. Code on the right side of the command is evaluated for each element of the array, processed element can be referenced in code as _x.<br><br>
| Searches for an element within array for which the code evaluates to true. Returns the 0 based index on success or -1 if not found. Code on the right side of the command is evaluated for each element of the array, processed element can be referenced in code as _x.<br><br>


NOTE: Because command findIf terminates as soon as it finds an element that fulfills the condition, it is more efficient then [[count]] in scenarios where you need to check for presence / absence of at least one element that evaluates to true.   |= Description
{{Informative | [[findIf]] terminates as soon as it finds an element that fulfills the condition, thus it is more efficient then [[count]] in scenarios where you need to check for presence / absence of at least one element that evaluates to true. }}  |= Description
____________________________________________________________________________________________
____________________________________________________________________________________________



Revision as of 23:14, 2 January 2019

Hover & click on the images for description

Description

Description:
Searches for an element within array for which the code evaluates to true. Returns the 0 based index on success or -1 if not found. Code on the right side of the command is evaluated for each element of the array, processed element can be referenced in code as _x.

findIf terminates as soon as it finds an element that fulfills the condition, thus it is more efficient then count in scenarios where you need to check for presence / absence of at least one element that evaluates to true.
Groups:
Uncategorised

Syntax

Syntax:
array findIf code
Parameters:
array: Array - array to search in
code: Code - code defining an element to find, processed element can be referenced within the code as _x
Return Value:
Number - 0 based position of the first array element for which the code evaluate to true, -1 if not found

Examples

Example 1:
[unit1,unit2,unit3] findIf {!alive _x}; //return index of first dead unit
Example 2:
//two ways how to 'wait for all units to be dead': waitUntil { [unit1,unit2,unit3] findIf {alive _x} == -1 }; //fast, terminates as soon as it finds alive unit waitUntil { {alive _x} count [unit1,unit2,unit3] == 0 }; //slow, always goes through all array elements

Additional Information

See also:
find count

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