ACE3/addons/arsenal/functions/fnc_portVALoadouts.sqf
Josuan Albin 69f7484f12 Add a function to port BI VA loadouts to ACE Arsenal (#5943)
* Add a function to port BI VA loadouts to ACE Arsenal

* Fix typos in the header

* Remove override argument, add button in 3DEN

* Add null player exception

* Remove unused passed argument

* Add error messages to portVALoadouts

* Change error messages

* Add missing dot in string
2017-12-26 17:43:33 -06:00

44 lines
1.1 KiB
Plaintext

/*
* Author: alganthe
* Port VA loadouts to ACE Arsenal.
*
* Arguments:
* None
*
* Return Value:
* None
*
* Public: Yes
*/
#include "script_component.hpp"
private _VALoadouts = +(profilenamespace getvariable ["bis_fnc_saveInventory_data",[]]);
private _aceLoadouts = +(profileNamespace getVariable [QGVAR(saved_loadouts),[]]);
if (isNull player) exitWith {
[localize LSTRING(portLoadoutsPlayerError)] call BIS_fnc_error;
};
if (_VALoadouts isEqualTo []) exitWith {
[localize LSTRING(portLoadoutsLoadoutError)] call BIS_fnc_error;
};
for "_i" from 0 to (count _VALoadouts - 1) step 2 do {
_name = _VALoadouts select _i;
_inventory = _VALoadouts select (_i + 1);
private _sameNameLoadoutsList = _aceLoadouts select {_x select 0 == _name};
[player, [profilenamespace, _name]] call bis_fnc_loadinventory;
private _loadout = getUnitLoadout player;
if (count _sameNameLoadoutsList > 0) then {
_aceLoadouts set [_aceLoadouts find (_sameNameLoadoutsList select 0), [_name, _loadout]];
} else {
_aceLoadouts pushBack [_name, _loadout];
};
};
profileNamespace setVariable [QGVAR(saved_loadouts), _aceLoadouts];