Merge pull request #1909 from oiad/master

Revert force coins update, Add seperate coins update
This commit is contained in:
icomrade
2017-03-15 15:09:39 -07:00
committed by GitHub

View File

@@ -66,8 +66,7 @@ _object_position = {
}; };
_object_inventory = { _object_inventory = {
private ["_inventory","_key","_isNormal","_coins","_forceUpdate"]; private ["_inventory","_key","_isNormal","_coins"];
_forceUpdate = false;
if (_object isKindOf "TrapItems") then { if (_object isKindOf "TrapItems") then {
_inventory = [["armed",_object getVariable ["armed",false]]]; _inventory = [["armed",_object getVariable ["armed",false]]];
} else { } else {
@@ -83,15 +82,13 @@ _object_inventory = {
_inventory = _object getVariable ["doorfriends", []]; //We're replacing the inventory with UIDs for this item _inventory = _object getVariable ["doorfriends", []]; //We're replacing the inventory with UIDs for this item
}; };
if (Z_SingleCurrency && {typeOf (_object) in DZE_MoneyStorageClasses}) then { _forceUpdate = true; };
if (_isNormal) then { if (_isNormal) then {
_inventory = [getWeaponCargo _object, getMagazineCargo _object, getBackpackCargo _object]; _inventory = [getWeaponCargo _object, getMagazineCargo _object, getBackpackCargo _object];
}; };
}; };
_previous = str(_object getVariable["lastInventory",[]]); _previous = str(_object getVariable["lastInventory",[]]);
if ((str _inventory != _previous) || {_forceUpdate}) then { if (str _inventory != _previous) then {
_object setVariable["lastInventory",_inventory]; _object setVariable["lastInventory",_inventory];
if (_objectID == "0") then { if (_objectID == "0") then {
_key = format["CHILD:309:%1:",_objectUID] + str _inventory + ":"; _key = format["CHILD:309:%1:",_objectUID] + str _inventory + ":";
@@ -245,6 +242,27 @@ _object_variables = {
_key call server_hiveWrite; _key call server_hiveWrite;
}; };
_object_coins = {
private ["_inventory","_key","_coins"];
_inventory = [getWeaponCargo _object, getMagazineCargo _object, getBackpackCargo _object];
_object setVariable["lastInventory",_inventory];
if (_objectID == "0") then {
_key = format["CHILD:309:%1:",_objectUID] + str _inventory + ":";
} else {
_key = format["CHILD:303:%1:",_objectID] + str _inventory + ":";
};
if (Z_SingleCurrency) then {
_coins = _object getVariable [Z_MoneyVariable, -1]; //set to invalid value if getVariable fails to prevent overwriting of coins in DB
_key = _key + str _coins + ":";
};
#ifdef OBJECT_DEBUG
diag_log format["DELETE: Deleted by KEY: %1",_key];
#endif
_key call server_hiveWrite;
};
_object setVariable ["lastUpdate",diag_ticktime,true]; _object setVariable ["lastUpdate",diag_ticktime,true];
switch (_type) do { switch (_type) do {
case "all": { case "all": {
@@ -273,4 +291,7 @@ switch (_type) do {
case "objWallDamage": { case "objWallDamage": {
call _objWallDamage; call _objWallDamage;
}; };
case "coins": {
call _object_coins;
};
}; };