2023-09-12 18:58:10 +00:00
|
|
|
#include "..\script_component.hpp"
|
2015-01-11 16:42:31 +00:00
|
|
|
/*
|
|
|
|
* Author: commy2
|
|
|
|
* Returns array of crew member objects.
|
|
|
|
*
|
2015-09-21 11:08:10 +00:00
|
|
|
* Arguments:
|
|
|
|
* 0: Vehicle <OBJECT>
|
|
|
|
* 1: Slot types filter (default: ["driver", "commander", "gunner", "turret", "cargo", "ffv"]) <ARRAY>
|
|
|
|
*
|
|
|
|
* Return Value:
|
|
|
|
* Crew <ARRAY>
|
2015-01-11 16:42:31 +00:00
|
|
|
*
|
2017-06-08 13:31:51 +00:00
|
|
|
* Example:
|
|
|
|
* [car, ["driver"]] call ace_common_fnc_getVehicleCrew
|
|
|
|
*
|
2015-09-21 11:08:10 +00:00
|
|
|
* Public: Yes
|
2015-01-11 16:42:31 +00:00
|
|
|
*/
|
|
|
|
|
2015-09-21 11:08:10 +00:00
|
|
|
params ["_vehicle", ["_types", ["driver", "commander", "gunner", "turret", "cargo", "ffv"]]];
|
2015-01-11 16:42:31 +00:00
|
|
|
|
2015-12-12 15:48:54 +00:00
|
|
|
private _crew = [];
|
2015-01-11 16:42:31 +00:00
|
|
|
|
|
|
|
// iterate through all crew members
|
|
|
|
{
|
2015-09-21 11:08:10 +00:00
|
|
|
// this unit is in a ffv position. check if we search for ffv.
|
|
|
|
if (_x select 4) then {
|
|
|
|
if ("ffv" in _types) then {
|
|
|
|
_crew pushBack (_x select 0);
|
|
|
|
};
|
|
|
|
} else {
|
|
|
|
// otherwise check if we search for that type. toLower, because fullCrew returns "driver" vs. "Turret".
|
|
|
|
if (toLower (_x select 1) in _types) then {
|
|
|
|
_crew pushBack (_x select 0);
|
|
|
|
};
|
2015-01-11 16:42:31 +00:00
|
|
|
};
|
2015-09-21 11:08:10 +00:00
|
|
|
false
|
|
|
|
} count fullCrew _vehicle;
|
2015-01-11 16:42:31 +00:00
|
|
|
|
|
|
|
_crew
|