ACE3/addons/weaponselect/functions/fnc_findNextGrenadeMagazine.sqf

36 lines
1017 B
Plaintext
Raw Normal View History

2015-01-17 17:26:51 +00:00
// by commy2
#include "script_component.hpp"
2015-05-15 08:30:15 +00:00
private ["_allMags", "_allMuzzles", "_magazines"];
2015-01-17 17:26:51 +00:00
2015-05-15 07:59:57 +00:00
PARAMS_1(_type); //"All", "Frag" or "NonFrag"
2015-01-17 17:26:51 +00:00
_allMags = missionNamespace getVariable [format [QGVAR(%1Magazines), _type], []];
_allMuzzles = missionNamespace getVariable [format [QGVAR(%1Muzzles), _type], []];
_magazines = magazines ACE_player;
private ["_start", "_index", "_nextMagazine"];
_start = [GVAR(CurrentGrenadeMuzzleOther), GVAR(CurrentGrenadeMuzzleFrag)] select GVAR(CurrentGrenadeMuzzleIsFrag);
_index = _allMuzzles find _start;
scopeName "SearchMain";
_nextMagazine = "";
for "_index" from (_index + 1) to (count _allMuzzles - 1) do {
{
if (_x in (_allMags select _index)) exitWith {_nextMagazine = _x; breakTo "SearchMain"};
} count _magazines;
};
if (_nextMagazine != "") exitWith {_nextMagazine};
for "_index" from 0 to _index do {
{
if (_x in (_allMags select _index)) exitWith {_nextMagazine = _x; breakTo "SearchMain"};
} count _magazines;
};
_nextMagazine