-
Notifications
You must be signed in to change notification settings - Fork 4
/
1007210.sqf
1 lines (1 loc) · 2.36 KB
/
1007210.sqf
1
ISSE_arr_update = { private["_arr", "_key", "_val", "_upd", "_i"]; _arr = _this select 0; _key = _this select 1; _val = _this select 2; _upd = false; for [{_i=0}, {_i < (count _arr)}, {_i=_i+1}] do { if ( ((_arr select _i) select 0) == _key ) exitWith { (_arr select _i) SET [1, _val]; _upd = true; }; }; if (!_upd) then { _arr = _arr + [ [_key, _val] ]; }; _arr };ISSE_arr_length = { (count _this)};ISSE_arr_keys = { private["_result", "_i"]; _result = []; for [{_i=0}, {_i < (count _this)}, {_i=_i+1}] do { _result = _result + [ ((_this select _i) select 0)]; }; _result};ISSE_arr_values = { private["_result", "_i"]; _result = []; for [{_i=0}, {_i < (count _this)}, {_i=_i+1}] do { _result = _result + [ ((_this select _i) select 1)]; }; _result};ISSE_arr_hasKey = { ( (_this select 1) in ((_this select 0) call ISSE_arr_keys) )};ISSE_arr_delete = { private["_arr", "_key", "_del", "_i"]; _arr = _this select 0; _key = _this select 1; for [{_i=0}, {_i < (count _arr)}, {_i=_i+1}] do { if ( ((_arr select _i) select 0) == _key ) exitWith { _arr SET [_i, ""]; _arr = _arr - [""]; }; }; _arr};ISSE_arr_equals = { ( (format["%1", _this select 0]) == (format["%1", _this select 1]) )};ISSE_arr_getValue = { private ["_c", "_arr", "_key"]; _arr = _this select 0; _key = _this select 1; for [{_c=0}, {_c < (count _arr)}, {_c=_c+1}] do { if (((_arr select _c) select 0) == _key) exitWith { ((_arr select _c) select 1) }; };};ISSE_arr_countMultiple = { private ["_c", "_Farr", "_Fval", "_Fcount"]; _Farr = _this select 0; _Fval = _this select 1; _Fcount = 0; for [{_c=0}, {_c < (count _Farr)}, {_c=_c+1}] do { if ( (typeName (_Farr select _c)) == (typeName _Fval) ) then { if ((_Farr select _c) == _Fval) then {_Fcount = _Fcount + 1;}; }; }; _Fcount};