#include "..\script_component.hpp" /* * Function: dragonfly_db_fnc_hashGet * Author: Creedcoder, J.Schmidt * Edit: 07.15.2024 * * [Description] * Get value of field in the default hash and return it via callback. * * Arguments: * 0: Name of stored field in hash (default: "") * 1: Name of function to return data (default: "") * 2: Use call instead of spawn (default: false) * 3: NetID of target to return data to (default: "") * * Return Value: * N/A * * Examples: * ["loadout", "dragonfly_db_fnc_test", false] call dragonfly_db_fnc_hashGet (Server or Singleplayer Only) * ["loadout", "dragonfly_db_fnc_test", false, netId player] remoteExecCall ["dragonfly_db_fnc_hashGet", 2, false] (Multiplayer Only) * * Public: Yes */ params [["_keyField", "", [""]], ["_function", "", [""]], ["_call", false, [false]], ["_netId", "", [""]]]; #ifdef __A3__DEBUG__ diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_hashGet' KeyField: '%1', Function: '%2', Call: '%3', NetId: '%4'", _keyField, _function, _call, _netId]; #endif if (_keyField == "" || _function == "") exitWith { diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_hashGet' Invalid Input for KeyField '%1' or Function '%2'", _keyField, _function]; }; private _return = ""; if (_netId != "") then { #ifdef __A3__DEBUG__ diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_hashGet' Using NetId: '%1'", _netId]; #endif if (_call) then { _return = "ArmaDragonflyClient" callExtension ["hget", [_keyField, _function, _netId, _call]]; } else { _return = "ArmaDragonflyClient" callExtension ["hget", [_keyField, _function, _netId]]; }; } else { #ifdef __A3__DEBUG__ diag_log text "ArmaDragonflyClient: 'dragonfly_db_fnc_hashGet' Using current player"; #endif if (_call) then { _return = "ArmaDragonflyClient" callExtension ["hget", [_keyField, _function, _call]]; } else { _return = "ArmaDragonflyClient" callExtension ["hget", [_keyField, _function]]; }; }; #ifdef __A3__DEBUG__ diag_log text format ["ArmaDragonflyClient: 'dragonfly_db_fnc_hashGet' Return: '%1'", _return]; #endif [(_return select 0)] call FUNC(scheduler);