mirror of
https://github.com/EpochModTeam/DayZ-Epoch.git
synced 2025-12-14 20:13:13 +03:00
removed more unused files
This commit is contained in:
@@ -1,182 +0,0 @@
|
|||||||
private ["_characterID","_temp","_isSync","_currentWpn","_currentMag","_magazines","_qty","_qtyT","_val","_isNewPos","_isNewBackp","_humanity","_isNewGear","_doUpdate","_currentModel","_modelChk","_playerPos","_playerGear","_playerBackp","_backpack","_updates","_killsB","_killsH","_medical","_isNewMed","_character","_timeSince","_charPos","_isInVehicle","_justAte","_justDrank","_distanceFoot","_lastPos","_kills","_headShots","_timeGross","_timeLeft","_onLadder","_isTerminal","_vehicle","_wounds","_currentAnim","_muzzles","_array","_key","_lastTime","_config","_currentState"];
|
|
||||||
_character = _this;
|
|
||||||
_doUpdate = false;
|
|
||||||
_characterID = _character getVariable ["CharacterID","0"];
|
|
||||||
_updates = _character getVariable ["updatePlayer",[false,false,false,false,false]];
|
|
||||||
_charPos = getPosATL _character;
|
|
||||||
_isInVehicle = vehicle _character != _character;
|
|
||||||
_timeSince = 0;
|
|
||||||
_humanity = 0;
|
|
||||||
|
|
||||||
if (_characterID == "0") exitWith {
|
|
||||||
diag_log ("ERROR: Cannot Sync Character " + (name _character) + " as no characterID");
|
|
||||||
};
|
|
||||||
|
|
||||||
//CheckVehicle
|
|
||||||
_character allowDamage true;
|
|
||||||
if (_isInVehicle) then {
|
|
||||||
_vehicle = (vehicle _character);
|
|
||||||
_isSync = _vehicle getVariable ["ObjectID",0] > 0;
|
|
||||||
if (!_isSync) then {
|
|
||||||
_vehicle allowDamage true;
|
|
||||||
_vehicle setDamage 1;
|
|
||||||
_character setVelocity [0,0,100];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
//Check for server initiated updates
|
|
||||||
_isNewMed = _character getVariable["medForceUpdate",false]; //Med Update is forced when a player receives some kind of med incident
|
|
||||||
|
|
||||||
//Check for player initiated updates
|
|
||||||
if ((count _updates > 0 or _isNewMed) and _characterID != "0") then {
|
|
||||||
_isNewPos = _updates select 0;
|
|
||||||
_isNewGear = _updates select 1;
|
|
||||||
_isNewBackp = _updates select 2;
|
|
||||||
_justAte = _updates select 3;
|
|
||||||
_justDrank = _updates select 4;
|
|
||||||
_playerPos = [];
|
|
||||||
_playerGear = [];
|
|
||||||
_playerBackp = [];
|
|
||||||
_medical = [];
|
|
||||||
_distanceFoot = 0;
|
|
||||||
|
|
||||||
//Check if update is requested
|
|
||||||
if (_isNewPos) then {
|
|
||||||
if (((_charPos select 0) == 0) and ((_charPos select 1) == 0)) then {
|
|
||||||
//Zero Position
|
|
||||||
} else {
|
|
||||||
_playerPos = [round(direction _character),_charPos];
|
|
||||||
_lastPos = _character getVariable["lastPos",_charPos];
|
|
||||||
if (count _lastPos > 2 and count _charPos > 2) then {
|
|
||||||
if (!_isInVehicle) then {
|
|
||||||
_distanceFoot = round(_charPos distance _lastPos);
|
|
||||||
if (_distanceFoot > 500) then {
|
|
||||||
_distanceFoot = 0;
|
|
||||||
} else {
|
|
||||||
_doUpdate = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
_character setVariable["lastPos",_charPos];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
if (_isNewGear) then {
|
|
||||||
//player sideChat format["SERVER: %1 update backpack",_characterID];
|
|
||||||
_currentWpn = currentMuzzle _character;
|
|
||||||
_currentMag = currentMagazine _character;
|
|
||||||
_magazines = magazines _character;
|
|
||||||
|
|
||||||
_qty = _character ammo _currentWpn;
|
|
||||||
_qtyT = getNumber(configFile >> "cfgMagazines" >> _currentMag >> "count");
|
|
||||||
if (_qty < (_qtyT * 0.5)) then {
|
|
||||||
_val = _magazines find _currentMag;
|
|
||||||
_magazines set [_val,"DEL"];
|
|
||||||
_magazines = _magazines - ["DEL"];
|
|
||||||
};
|
|
||||||
_playerGear = [weapons _character,_magazines];
|
|
||||||
_doUpdate = true;
|
|
||||||
};
|
|
||||||
if (_isNewBackp) then {
|
|
||||||
//player sideChat format["SERVER: %1 update inventory",_characterID];
|
|
||||||
_backpack = unitBackpack _character;
|
|
||||||
_playerBackp = [typeOf _backpack,getWeaponCargo _backpack,getMagazineCargo _backpack];
|
|
||||||
_doUpdate = true;
|
|
||||||
};
|
|
||||||
if (_isNewMed) then {
|
|
||||||
//player sideChat format["SERVER: %1 update medical",_characterID];
|
|
||||||
_wounds = [];
|
|
||||||
if (!(_character getVariable["USEC_isDead",false])) then {
|
|
||||||
_medical = _character call player_sumMedical;
|
|
||||||
_doUpdate = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
//Process update
|
|
||||||
if (_doUpdate and _characterID != "0") then {
|
|
||||||
//Record stats while we're here
|
|
||||||
/*
|
|
||||||
Check previous stats against what client had when they logged in
|
|
||||||
this helps prevent JIP issues, where a new player wouldn't have received
|
|
||||||
the old players updates. Only valid for stats where clients could have
|
|
||||||
be recording results from their local objects (such as agent zombies)
|
|
||||||
*/
|
|
||||||
_kills = ["zombieKills",_character] call server_getDiff;
|
|
||||||
_killsB = ["banditKills",_character] call server_getDiff;
|
|
||||||
_killsH = ["humanKills",_character] call server_getDiff;
|
|
||||||
_headShots = ["headShots",_character] call server_getDiff;
|
|
||||||
_humanity = ["humanity",_character] call server_getDiff2;
|
|
||||||
//_humanity = _character getVariable ["humanity",0];
|
|
||||||
_character addScore _kills;
|
|
||||||
/*
|
|
||||||
Assess how much time has passed, for recording total time on server
|
|
||||||
*/
|
|
||||||
_lastTime = _character getVariable["lastTime",time];
|
|
||||||
_timeGross = (time - _lastTime);
|
|
||||||
_timeSince = floor(_timeGross / 60);
|
|
||||||
_timeLeft = (_timeGross - (_timeSince * 60));
|
|
||||||
/*
|
|
||||||
Get character state details
|
|
||||||
*/
|
|
||||||
_currentWpn = currentMuzzle _character;
|
|
||||||
_currentAnim = animationState _character;
|
|
||||||
_config = configFile >> "CfgMovesMaleSdr" >> "States" >> _currentAnim;
|
|
||||||
_onLadder = (getNumber (_config >> "onLadder")) == 1;
|
|
||||||
_isTerminal = (getNumber (_config >> "terminal")) == 1;
|
|
||||||
//_wpnDisabled = (getNumber (_config >> "disableWeapons")) == 1;
|
|
||||||
_currentModel = typeOf _character;
|
|
||||||
_modelChk = _character getVariable ["model_CHK",""];
|
|
||||||
if (_currentModel == _modelChk) then {
|
|
||||||
_currentModel = "";
|
|
||||||
} else {
|
|
||||||
_currentModel = str(_currentModel);
|
|
||||||
_character setVariable ["model_CHK",typeOf _character];
|
|
||||||
};
|
|
||||||
|
|
||||||
if (_onLadder or _isInVehicle or _isTerminal) then {
|
|
||||||
_currentAnim = "";
|
|
||||||
//If position to be updated, make sure it is at ground level!
|
|
||||||
if ((count _playerPos > 0) and !_isTerminal) then {
|
|
||||||
_charPos set [2,0];
|
|
||||||
_playerPos set[1,_charPos];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
if (_isInVehicle) then {
|
|
||||||
_currentWpn = "";
|
|
||||||
} else {
|
|
||||||
_muzzles = getArray(configFile >> "cfgWeapons" >> _currentWpn >> "muzzles");
|
|
||||||
if (count _muzzles > 1) then {
|
|
||||||
_currentWpn = currentMuzzle _character;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
_temp = round(_character getVariable ["temperature",100]);
|
|
||||||
_currentState = [_currentWpn,_currentAnim,_temp];
|
|
||||||
/*
|
|
||||||
Everything is ready, now publish to HIVE
|
|
||||||
*/
|
|
||||||
if (count _playerPos > 0) then {
|
|
||||||
_array = [];
|
|
||||||
{
|
|
||||||
if (_x > dayz_minpos and _x < dayz_maxpos) then {
|
|
||||||
_array set [count _array,_x];
|
|
||||||
};
|
|
||||||
} forEach (_playerPos select 1);
|
|
||||||
_playerPos set [1,_array];
|
|
||||||
};
|
|
||||||
if (!isNull _character) then {
|
|
||||||
if (alive _character) then {
|
|
||||||
//Wait for HIVE to be free
|
|
||||||
//Send request
|
|
||||||
_key = format["CHILD:201:%1:%2:%3:%4:%5:%6:%7:%8:%9:%10:%11:%12:%13:%14:%15:%16:",_characterID,_playerPos,_playerGear,_playerBackp,_medical,_justAte,_justDrank,_kills,_headShots,_distanceFoot,_timeSince,_currentState,_killsH,_killsB,_currentModel,_humanity];
|
|
||||||
// diag_log ("HIVE: WRITE: "+ str(_key) + " / " + _characterID);
|
|
||||||
_key spawn server_hiveWrite;
|
|
||||||
_character setVariable ["updatePlayer",[false,false,false,false,false],true];
|
|
||||||
_character setVariable ["medForceUpdate",false];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
//Reset timer
|
|
||||||
if (_timeSince > 0) then {
|
|
||||||
_character setVariable ["lastTime",(time - _timeLeft)];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
@@ -1,14 +0,0 @@
|
|||||||
private["_unitArray","_handle"];
|
|
||||||
_unitArray = [];
|
|
||||||
if (isSinglePlayer) then {
|
|
||||||
_unitArray = [player];
|
|
||||||
} else {
|
|
||||||
_unitArray = dayz_players;
|
|
||||||
};
|
|
||||||
{
|
|
||||||
if (!isNull _x) then {
|
|
||||||
//diag_log ("SERVER: Routine Player Check: " + str(_x));
|
|
||||||
_handle = _x spawn server_updatePlayer;
|
|
||||||
waitUntil{scriptDone _handle};
|
|
||||||
};
|
|
||||||
} forEach _unitArray;
|
|
||||||
Reference in New Issue
Block a user