mirror of
https://github.com/EpochModTeam/DayZ-Epoch.git
synced 2025-12-14 12:12:34 +03:00
Fixed if _hiveResponse is null
13:21:08 "HIVE: trying to get objects" 13:21:08 Error in expression <ray = call compile format ["%1",_data]; _resultArray }; server_hiveReadWriteLar> 13:21:08 Error position: <_resultArray }; server_hiveReadWriteLar> 13:21:08 Error Undefined variable in expression: _resultarray 13:21:08 File z\addons\dayz_server\init\server_functions.sqf, line 172 13:21:08 Error in expression <ction problem... HiveExt response:"+str(_hiveResponse)); _hiveResponse = ["",0];> 13:21:08 Error position: <_hiveResponse)); _hiveResponse = ["",0];> 13:21:08 Error Undefined variable in expression: _hiveresponse 13:21:08 File z\addons\dayz_server\system\server_monitor.sqf, line 38
This commit is contained in:
@@ -8,7 +8,7 @@ waitUntil{initialized}; //means all the functions are now defined
|
|||||||
diag_log "HIVE: Starting";
|
diag_log "HIVE: Starting";
|
||||||
|
|
||||||
waituntil{isNil "sm_done"}; // prevent server_monitor be called twice (bug during login of the first player)
|
waituntil{isNil "sm_done"}; // prevent server_monitor be called twice (bug during login of the first player)
|
||||||
|
|
||||||
// Custom Configs
|
// Custom Configs
|
||||||
if(isnil "MaxVehicleLimit") then {
|
if(isnil "MaxVehicleLimit") then {
|
||||||
MaxVehicleLimit = 50;
|
MaxVehicleLimit = 50;
|
||||||
@@ -33,20 +33,26 @@ if (isServer and isNil "sm_done") then {
|
|||||||
for "_i" from 1 to 5 do {
|
for "_i" from 1 to 5 do {
|
||||||
diag_log "HIVE: trying to get objects";
|
diag_log "HIVE: trying to get objects";
|
||||||
_key = format["CHILD:302:%1:", dayZ_instance];
|
_key = format["CHILD:302:%1:", dayZ_instance];
|
||||||
_hiveResponse = _key call server_hiveReadWrite;
|
_hiveResponse = _key call server_hiveReadWrite;
|
||||||
if ((((isnil "_hiveResponse") || {(typeName _hiveResponse != "ARRAY")}) || {((typeName (_hiveResponse select 1)) != "SCALAR")})) then {
|
if (isnil "_hiveResponse") then {
|
||||||
diag_log ("HIVE: connection problem... HiveExt response:"+str(_hiveResponse));
|
diag_log ("HIVE: connection problem... unable to call HiveExt");
|
||||||
_hiveResponse = ["",0];
|
_hiveResponse = ["",0];
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
diag_log ("HIVE: found "+str(_hiveResponse select 1)+" objects" );
|
if ({(typeName _hiveResponse != "ARRAY")} || {((typeName (_hiveResponse select 1)) != "SCALAR")}) then {
|
||||||
_i = 99; // break
|
diag_log ("HIVE: connection problem... HiveExt response:"+str(_hiveResponse));
|
||||||
|
_hiveResponse = ["",0];
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
diag_log ("HIVE: found "+str(_hiveResponse select 1)+" objects" );
|
||||||
|
_i = 99; // break
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
_BuildingQueue = [];
|
_BuildingQueue = [];
|
||||||
_objectQueue = [];
|
_objectQueue = [];
|
||||||
|
|
||||||
if ((_hiveResponse select 0) == "ObjectStreamStart") then {
|
if ((_hiveResponse select 0) == "ObjectStreamStart") then {
|
||||||
diag_log ("HIVE: Commence Object Streaming...");
|
diag_log ("HIVE: Commence Object Streaming...");
|
||||||
_key = format["CHILD:302:%1:", dayZ_instance];
|
_key = format["CHILD:302:%1:", dayZ_instance];
|
||||||
@@ -66,7 +72,7 @@ if (isServer and isNil "sm_done") then {
|
|||||||
};
|
};
|
||||||
diag_log ("HIVE: got " + str(_bQty) + " Epoch Objects and " + str(_vQty) + " Vehicles");
|
diag_log ("HIVE: got " + str(_bQty) + " Epoch Objects and " + str(_vQty) + " Vehicles");
|
||||||
};
|
};
|
||||||
|
|
||||||
// # NOW SPAWN OBJECTS #
|
// # NOW SPAWN OBJECTS #
|
||||||
_totalvehicles = 0;
|
_totalvehicles = 0;
|
||||||
{
|
{
|
||||||
@@ -79,7 +85,7 @@ if (isServer and isNil "sm_done") then {
|
|||||||
_hitPoints = _x select 6;
|
_hitPoints = _x select 6;
|
||||||
_fuel = _x select 7;
|
_fuel = _x select 7;
|
||||||
_damage = _x select 8;
|
_damage = _x select 8;
|
||||||
|
|
||||||
_dir = 0;
|
_dir = 0;
|
||||||
_pos = [0,0,0];
|
_pos = [0,0,0];
|
||||||
_wsDone = false;
|
_wsDone = false;
|
||||||
@@ -90,19 +96,19 @@ if (isServer and isNil "sm_done") then {
|
|||||||
_pos = _worldspace select 1;
|
_pos = _worldspace select 1;
|
||||||
_wsDone = true;
|
_wsDone = true;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
if (!_wsDone) then {
|
if (!_wsDone) then {
|
||||||
if (count _worldspace >= 1) then { _dir = _worldspace select 0; };
|
if (count _worldspace >= 1) then { _dir = _worldspace select 0; };
|
||||||
_pos = [getMarkerPos "center",0,4000,10,0,2000,0] call BIS_fnc_findSafePos;
|
_pos = [getMarkerPos "center",0,4000,10,0,2000,0] call BIS_fnc_findSafePos;
|
||||||
if (count _pos < 3) then { _pos = [_pos select 0,_pos select 1,0]; };
|
if (count _pos < 3) then { _pos = [_pos select 0,_pos select 1,0]; };
|
||||||
diag_log ("MOVED OBJ: " + str(_idKey) + " of class " + _type + " to pos: " + str(_pos));
|
diag_log ("MOVED OBJ: " + str(_idKey) + " of class " + _type + " to pos: " + str(_pos));
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
if (_damage < 1) then {
|
if (_damage < 1) then {
|
||||||
//diag_log format["OBJ: %1 - %2", _idKey,_type];
|
//diag_log format["OBJ: %1 - %2", _idKey,_type];
|
||||||
|
|
||||||
//Create it
|
//Create it
|
||||||
_object = createVehicle [_type, _pos, [], 0, "CAN_COLLIDE"];
|
_object = createVehicle [_type, _pos, [], 0, "CAN_COLLIDE"];
|
||||||
_object setVariable ["lastUpdate",time];
|
_object setVariable ["lastUpdate",time];
|
||||||
@@ -138,15 +144,15 @@ if (isServer and isNil "sm_done") then {
|
|||||||
};
|
};
|
||||||
|
|
||||||
_object setVariable ["CharacterID", _ownerID, true];
|
_object setVariable ["CharacterID", _ownerID, true];
|
||||||
|
|
||||||
clearWeaponCargoGlobal _object;
|
clearWeaponCargoGlobal _object;
|
||||||
clearMagazineCargoGlobal _object;
|
clearMagazineCargoGlobal _object;
|
||||||
// _object setVehicleAmmo DZE_vehicleAmmo;
|
// _object setVehicleAmmo DZE_vehicleAmmo;
|
||||||
|
|
||||||
_object setdir _dir;
|
_object setdir _dir;
|
||||||
_object setposATL _pos;
|
_object setposATL _pos;
|
||||||
_object setDamage _damage;
|
_object setDamage _damage;
|
||||||
|
|
||||||
if ((typeOf _object) in dayz_allowedObjects) then {
|
if ((typeOf _object) in dayz_allowedObjects) then {
|
||||||
if (DZE_GodModeBase) then {
|
if (DZE_GodModeBase) then {
|
||||||
_object addEventHandler ["HandleDamage", {false}];
|
_object addEventHandler ["HandleDamage", {false}];
|
||||||
@@ -157,7 +163,7 @@ if (isServer and isNil "sm_done") then {
|
|||||||
_object enableSimulation false;
|
_object enableSimulation false;
|
||||||
// used for inplace upgrades and lock/unlock of safe
|
// used for inplace upgrades and lock/unlock of safe
|
||||||
_object setVariable ["OEMPos", _pos, true];
|
_object setVariable ["OEMPos", _pos, true];
|
||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
if (count _intentory > 0) then {
|
if (count _intentory > 0) then {
|
||||||
@@ -171,7 +177,7 @@ if (isServer and isNil "sm_done") then {
|
|||||||
//Add weapons
|
//Add weapons
|
||||||
_objWpnTypes = (_intentory select 0) select 0;
|
_objWpnTypes = (_intentory select 0) select 0;
|
||||||
_objWpnQty = (_intentory select 0) select 1;
|
_objWpnQty = (_intentory select 0) select 1;
|
||||||
_countr = 0;
|
_countr = 0;
|
||||||
{
|
{
|
||||||
if(_x in (DZE_REPLACE_WEAPONS select 0)) then {
|
if(_x in (DZE_REPLACE_WEAPONS select 0)) then {
|
||||||
_x = (DZE_REPLACE_WEAPONS select 1) select ((DZE_REPLACE_WEAPONS select 0) find _x);
|
_x = (DZE_REPLACE_WEAPONS select 1) select ((DZE_REPLACE_WEAPONS select 0) find _x);
|
||||||
@@ -181,8 +187,8 @@ if (isServer and isNil "sm_done") then {
|
|||||||
_object addWeaponCargoGlobal [_x,(_objWpnQty select _countr)];
|
_object addWeaponCargoGlobal [_x,(_objWpnQty select _countr)];
|
||||||
};
|
};
|
||||||
_countr = _countr + 1;
|
_countr = _countr + 1;
|
||||||
} forEach _objWpnTypes;
|
} forEach _objWpnTypes;
|
||||||
|
|
||||||
//Add Magazines
|
//Add Magazines
|
||||||
_objWpnTypes = (_intentory select 1) select 0;
|
_objWpnTypes = (_intentory select 1) select 0;
|
||||||
_objWpnQty = (_intentory select 1) select 1;
|
_objWpnQty = (_intentory select 1) select 1;
|
||||||
@@ -209,8 +215,8 @@ if (isServer and isNil "sm_done") then {
|
|||||||
_countr = _countr + 1;
|
_countr = _countr + 1;
|
||||||
} forEach _objWpnTypes;
|
} forEach _objWpnTypes;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
if (_object isKindOf "AllVehicles") then {
|
if (_object isKindOf "AllVehicles") then {
|
||||||
{
|
{
|
||||||
_selection = _x select 0;
|
_selection = _x select 0;
|
||||||
@@ -222,14 +228,14 @@ if (isServer and isNil "sm_done") then {
|
|||||||
_object setFuel _fuel;
|
_object setFuel _fuel;
|
||||||
|
|
||||||
if (!((typeOf _object) in dayz_allowedObjects)) then {
|
if (!((typeOf _object) in dayz_allowedObjects)) then {
|
||||||
|
|
||||||
//_object setvelocity [0,0,1];
|
//_object setvelocity [0,0,1];
|
||||||
_object call fnc_veh_ResetEH;
|
_object call fnc_veh_ResetEH;
|
||||||
|
|
||||||
if(_ownerID != "0" and !(_object isKindOf "Bicycle")) then {
|
if(_ownerID != "0" and !(_object isKindOf "Bicycle")) then {
|
||||||
_object setvehiclelock "locked";
|
_object setvehiclelock "locked";
|
||||||
};
|
};
|
||||||
|
|
||||||
_totalvehicles = _totalvehicles + 1;
|
_totalvehicles = _totalvehicles + 1;
|
||||||
|
|
||||||
// total each vehicle
|
// total each vehicle
|
||||||
@@ -242,7 +248,7 @@ if (isServer and isNil "sm_done") then {
|
|||||||
};
|
};
|
||||||
} forEach (_BuildingQueue + _objectQueue);
|
} forEach (_BuildingQueue + _objectQueue);
|
||||||
// # END SPAWN OBJECTS #
|
// # END SPAWN OBJECTS #
|
||||||
|
|
||||||
|
|
||||||
// preload server traders menu data into cache
|
// preload server traders menu data into cache
|
||||||
if !(DZE_ConfigTrader) then {
|
if !(DZE_ConfigTrader) then {
|
||||||
@@ -259,11 +265,11 @@ if (isServer and isNil "sm_done") then {
|
|||||||
_data = "HiveEXT" callExtension _key;
|
_data = "HiveEXT" callExtension _key;
|
||||||
|
|
||||||
//diag_log "HIVE: Request sent";
|
//diag_log "HIVE: Request sent";
|
||||||
|
|
||||||
//Process result
|
//Process result
|
||||||
_result = call compile format ["%1",_data];
|
_result = call compile format ["%1",_data];
|
||||||
_status = _result select 0;
|
_status = _result select 0;
|
||||||
|
|
||||||
if (_status == "ObjectStreamStart") then {
|
if (_status == "ObjectStreamStart") then {
|
||||||
_val = _result select 1;
|
_val = _result select 1;
|
||||||
//Stream Objects
|
//Stream Objects
|
||||||
@@ -348,7 +354,7 @@ if (isServer and isNil "sm_done") then {
|
|||||||
if(isnil "spawnMarkerCount") then {
|
if(isnil "spawnMarkerCount") then {
|
||||||
spawnMarkerCount = 10;
|
spawnMarkerCount = 10;
|
||||||
};
|
};
|
||||||
|
|
||||||
actualSpawnMarkerCount = 0;
|
actualSpawnMarkerCount = 0;
|
||||||
|
|
||||||
// count valid spawn marker positions
|
// count valid spawn marker positions
|
||||||
@@ -359,7 +365,7 @@ if (isServer and isNil "sm_done") then {
|
|||||||
// exit since we did not find any further markers
|
// exit since we did not find any further markers
|
||||||
_i = spawnMarkerCount + 99;
|
_i = spawnMarkerCount + 99;
|
||||||
};
|
};
|
||||||
|
|
||||||
};
|
};
|
||||||
diag_log format["Total Number of spawn locations %1", actualSpawnMarkerCount];
|
diag_log format["Total Number of spawn locations %1", actualSpawnMarkerCount];
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user