BIS fnc sortBy: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
No edit summary
(Undo revision 95325 by Revo (talk))
Line 3: Line 3:
____________________________________________________________________________________________
____________________________________________________________________________________________


|arma3 |= Game name
| arma3 |= Game name


|0.58|= Game version
|0.58|= Game version
____________________________________________________________________________________________
____________________________________________________________________________________________


|Sorts an array according to given algorithm.|= Description
| <pre>/*
____________________________________________________________________________________________
 
|[] call [[BIS_fnc_sortBy]]; |= Syntax
Description:
____________________________________________________________________________________________
Sorts an array according to given algorithm.
|p1= [[Array]] - Unsorted array which can contain any types ([[object]]/[[numbers]]/[[strings]] ..) |= Parameter 1
 
|p2= [[Array]] - - used in the eval algorithm (object/numbers/strings ..)
Parameter(s):
                - input params are referenced in the sorting algorithm by _input0, _input1 .. _input9
_this select 0: any unsorted array (Array)
                - max. number of 10 input params is supported (0-9)|= Parameter 2
- array can contain any types (object/numbers/strings ..)
 
_this select 1: input parameters (Array)
- used in the eval algorithm (object/numbers/strings ..)
- input params are referenced in the sorting algorithm by _input0, _input1 .. _input9
- max. number of 10 input params is supported (0-9)


|p3= [[Code]] - sorted algorithm [optional: default {_x}] |= Parameter 3
_this select 2: sorted algorithm (Code) [optional: default {_x}]
- code needs to return a scalar
- variable _x refers to array item


|p4= [[String]] -sort direction [optional: default "ASCEND"]
_this select 3: sort direction (String) [optional: default "ASCEND"]
"ASCEND": sorts array in ascending direction (from lowest value to highest)
"ASCEND": sorts array in ascending direction (from lowest value to highest)
"DESCEND": sorts array in descending direction |= Parameter 4
"DESCEND": sorts array in descending direction
 
_this select 4: filter (Code) [optional: default {true}]
- code that needs to evaluate true for the array item to be sorted, otherwise item is removed
 
Returns:
Array
 
Examples:
 
//sort numbers from lowest to highest
_sortedNumbers = [[1,-80,0,480,15,-40],[],{_x},"ASCEND"] call BIS_fnc_sortBy;


//sort helicopters by distance from player
_closestHelicopters = [[_heli1,_heli2,_heli3],[],{player distance _x},"ASCEND"] call BIS_fnc_sortBy;


|p5= [[Code]] -  filter default {true}] - code that needs to evaluate true for the array item to be sorted, otherwise item is removed |= Parameter 5
//sort enemy by distance from friendly unit (referenced by local variable), the furtherest first
_furtherstEnemy = [[_enemy1,_enemy2,_enemy3],[_friendly],{_input0 distance _x},"DESCEND",{canMove _x}] call BIS_fnc_sortBy;
*/


</pre><small>''(Placeholder description extracted from the function header by [[BIS_fnc_exportFunctionsToWiki]])''</small> |= Description
____________________________________________________________________________________________
____________________________________________________________________________________________
|[[Array]]|= Return value
____________________________________________________________________________________________


| <!-- [] call [[BIS_fnc_sortBy]]; --> |= Syntax
|p1= |= Parameter 1


| |= Return value
____________________________________________________________________________________________
____________________________________________________________________________________________


|x1= <code></code> |=
____________________________________________________________________________________________


| [[BIS_fnc_sortAlphabetically]], [[BIS_fnc_sortNum]], [[sort]] |= See also
| [[BIS_fnc_sortAlphabetically]], [[BIS_fnc_sortNum]], [[sort]] |= See also

Revision as of 16:07, 2 April 2016


Hover & click on the images for description

Description

Description:
/*

	Description:
	Sorts an array according to given algorithm.

	Parameter(s):
	_this select 0: any unsorted array (Array)
		- array can contain any types (object/numbers/strings ..)

	_this select 1: input parameters (Array)
		- used in the eval algorithm (object/numbers/strings ..)
		- input params are referenced in the sorting algorithm by _input0, _input1 .. _input9
		- max. number of 10 input params is supported (0-9)

	_this select 2: sorted algorithm (Code) [optional: default {_x}]
		- code needs to return a scalar
		- variable _x refers to array item

	_this select 3: sort direction (String) [optional: default "ASCEND"]
		"ASCEND": sorts array in ascending direction (from lowest value to highest)
		"DESCEND": sorts array in descending direction

	_this select 4: filter (Code) [optional: default {true}]
		- code that needs to evaluate true for the array item to be sorted, otherwise item is removed

	Returns:
	Array

	Examples:

	//sort numbers from lowest to highest
	_sortedNumbers = [[1,-80,0,480,15,-40],[],{_x},"ASCEND"] call BIS_fnc_sortBy;

	//sort helicopters by distance from player
	_closestHelicopters = [[_heli1,_heli2,_heli3],[],{player distance _x},"ASCEND"] call BIS_fnc_sortBy;

	//sort enemy by distance from friendly unit (referenced by local variable), the furtherest first
	_furtherstEnemy = [[_enemy1,_enemy2,_enemy3],[_friendly],{_input0 distance _x},"DESCEND",{canMove _x}] call BIS_fnc_sortBy;
*/

(Placeholder description extracted from the function header by BIS_fnc_exportFunctionsToWiki)
Execution:
call
Groups:
Uncategorised

Syntax

Syntax:
Syntax needed
Return Value:
Return value needed

Examples

Example 1:

Additional Information

See also:
BIS_fnc_sortAlphabeticallyBIS_fnc_sortNumsort

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