mirror of
https://github.com/EpochModTeam/DayZ-Epoch.git
synced 2025-12-15 21:29:59 +03:00
fly cleanup and do not remove player bodys
This commit is contained in:
@@ -459,98 +459,51 @@ dayz_recordLogin = {
|
|||||||
_key call server_hiveWrite;
|
_key call server_hiveWrite;
|
||||||
};
|
};
|
||||||
|
|
||||||
///////////////
|
// Cleanup flies
|
||||||
// from dayzero
|
server_cleanFlies =
|
||||||
///////////////
|
|
||||||
server_Delete =
|
|
||||||
{
|
{
|
||||||
private["_body","_bodyGroup","_pos","_sfx"];
|
private ["_sound","_newdayz_flyMonitor"];
|
||||||
|
|
||||||
|
DZE_FlyWorkingSet = DZE_FlyWorkingSet+dayz_flyMonitor;
|
||||||
|
dayz_flyMonitor = [];
|
||||||
|
|
||||||
_body = _this select 0;
|
_newdayz_flyMonitor = [];
|
||||||
_bodyGroup = group _body;
|
|
||||||
_pos = getPosATL _body;
|
|
||||||
_sfx = nearestObject [_pos,"Sound_Flies"];
|
|
||||||
|
|
||||||
_body removeAllEventHandlers "HandleDamage";
|
|
||||||
_body removeAllEventHandlers "Killed";
|
|
||||||
_body removeAllEventHandlers "Fired";
|
|
||||||
_body removeAllEventHandlers "FiredNear";
|
|
||||||
|
|
||||||
deleteVehicle _body;
|
|
||||||
deleteGroup _bodyGroup;
|
|
||||||
|
|
||||||
if ((!isNull _sfx) and ((_sfx distance _pos) < 10)) then
|
|
||||||
{
|
{
|
||||||
deleteVehicle _sfx;
|
_sound = _x select 0;
|
||||||
};
|
_body = _x select 1;
|
||||||
|
|
||||||
|
// Remove flies
|
||||||
|
if (isNull _body) then {
|
||||||
|
deleteVehicle _sound;
|
||||||
|
[_body] call server_Delete;
|
||||||
|
} else {
|
||||||
|
_newdayz_flyMonitor set [count _newdayz_flyMonitor,_x];
|
||||||
|
};
|
||||||
|
|
||||||
|
} forEach DZE_FlyWorkingSet;
|
||||||
|
|
||||||
|
DZE_FlyWorkingSet = _newdayz_flyMonitor;
|
||||||
};
|
};
|
||||||
|
|
||||||
server_cleanDead =
|
server_cleanDead =
|
||||||
{
|
{
|
||||||
private ["_deletedZombies","_deletedBodies","_timeStamp","_backpack","_magazines","_backpackMagazines"];
|
|
||||||
|
|
||||||
_deletedZombies = 0;
|
|
||||||
_deletedBodies = 0;
|
|
||||||
|
|
||||||
{
|
{
|
||||||
if (_x isKindOf "zZombie_Base") then
|
if (_x isKindOf "zZombie_Base") then
|
||||||
{
|
{
|
||||||
deleteVehicle _x;
|
deleteVehicle _x;
|
||||||
_deletedZombies = _deletedZombies + 1;
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
_timeStamp = _x getVariable ["timeStamp",0];
|
_handled = _x getVariable ["handled",true];
|
||||||
//diag_log (format["CLEANUP: TIMESTAMP ON BODY: %1, VALUE: %2",(typeOf _x),_timeStamp]);
|
if (_handled) then {
|
||||||
if (_timeStamp == 0) then
|
|
||||||
{
|
|
||||||
_x enableSimulation false;
|
_x enableSimulation false;
|
||||||
_backpack = unitBackpack _x;
|
_body removeAllEventHandlers "HandleDamage";
|
||||||
|
_body removeAllEventHandlers "Killed";
|
||||||
if (!isNull _backpack) then
|
_body removeAllEventHandlers "Fired";
|
||||||
{
|
_body removeAllEventHandlers "FiredNear";
|
||||||
_magazines = magazines _x;
|
|
||||||
_backpackMagazines = getMagazineCargo _backpack;
|
|
||||||
//diag_log (format["CLEANUP: UNIT HAS BACKPACK, MAG COUNT: %1 PACK COUNT: %2",(count _magazines),(count _backpackMagazines)]);
|
|
||||||
if ((count _magazines < 4) and (count _backpackMagazines < 3)) then
|
|
||||||
{
|
|
||||||
[_x] call server_Delete;
|
|
||||||
_deletedBodies = _deletedBodies + 1;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
_x setVariable ["timeStamp",diag_tickTime];
|
|
||||||
//diag_log (format["CLEANUP: TIMESTAMPED BODY WITH BACKPACK: %1",_x]);
|
|
||||||
};
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
_magazines = magazines _x;
|
|
||||||
//diag_log (format["CLEANUP: UNIT HAS NO BACKPACK, MAG COUNT: %1",(count _magazines)]);
|
|
||||||
if (count _magazines < 4) then
|
|
||||||
{
|
|
||||||
[_x] call server_Delete;
|
|
||||||
_deletedBodies = _deletedBodies + 1;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
_x setVariable ["timeStamp",diag_tickTime];
|
|
||||||
//diag_log (format["CLEANUP: TIMESTAMPED BODY WITHOUT BACKPACK: %1",_x]);
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
if ((diag_tickTime - _timeStamp) > 2400) then
|
|
||||||
{
|
|
||||||
[_x] call server_Delete;
|
|
||||||
_deletedBodies = _deletedBodies + 1;
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
} forEach allDead;
|
} forEach allDead;
|
||||||
|
|
||||||
diag_log (format["CLEANUP: DELETED %1 PLAYERS AND %2 ZOMBIES",_deletedBodies,_deletedZombies]);
|
|
||||||
};
|
};
|
||||||
|
|
||||||
server_cleanLoot =
|
server_cleanLoot =
|
||||||
|
|||||||
Reference in New Issue
Block a user