ACE3/addons/common/functions/fnc_hashSet.sqf

27 lines
667 B
Plaintext
Raw Normal View History

2015-01-14 21:29:52 +00:00
//fnc_hashSet.sqf
#include "script_component.hpp"
2015-05-14 18:06:06 +00:00
private ["_index"];
// diag_log text format["%1 HASH SET: %2", ACE_diagTime, _this];
2015-01-14 21:29:52 +00:00
2015-05-14 18:06:06 +00:00
PARAMS_3(_hash,_key,_val);
2015-01-14 21:29:52 +00:00
ERRORDATA(3);
try {
2015-02-19 18:14:52 +00:00
if(VALIDHASH(_hash)) then {
_index = (_hash select 0) find _key;
if(_index == -1) then {
_index = (_hash select 0) find "ACREHASHREMOVEDONOTUSETHISVAL";
if(_index == -1) then {
_index = (count (_hash select 0));
};
(_hash select 0) set[_index, _key];
};
(_hash select 1) set[_index, _val];
} else {
ERROR("Input hash is not valid");
};
2015-01-14 21:29:52 +00:00
} catch {
2015-02-19 18:14:52 +00:00
HANDLECATCH;
2015-01-14 21:29:52 +00:00
};