private ["_display","_body","_playerID","_array","_source","_method","_canHitFree","_isBandit","_punishment","_humanityHit","_myKills","_humanity","_kills","_killsV","_myGroup"]; disableSerialization; if (deathHandled) exitWith {}; deathHandled = true; if ((alive player) && {isNil {dayz_playerName}}) then { dayz_playerName = name player; }; //Prevent client freezes _display = findDisplay 49; if(!isNull _display) then {_display closeDisplay 0;}; if (dialog) then {closeDialog 0;}; if (visibleMap) then {openMap false;}; _body = player; _playerID = [player] call FNC_GetPlayerUID; disableUserInput true; //add weapon on back to player... if (dayz_onBack != "") then { //Add weapon on back to body. _body addWeapon dayz_onBack; /* //Add weapon on back to the ground. _pos = _body modeltoWorld [1,1,0]; //_pos set [2, 0]; _item = createVehicle ["WeaponHolder", _pos, [], 0.0, "CAN_COLLIDE"]; _item setPosATL [_pos select 0, _pos select 1, ((_pos select 2) + 0.1)]; _item addWeaponCargoGlobal [dayz_onBack,1]; */ }; _infected = 0; if (r_player_infected && DZE_PlayerZed) then { _infected = 1; }; //Send Death Notice //["PVDZ_plr_Death",[dayz_characterID,0,_body,_playerID,dayz_playerName]] call callRpcProcedure; PVDZ_plr_Death = [dayz_characterID,0,_body,_playerID,_infected,dayz_playerName]; publicVariableServer "PVDZ_plr_Death"; _id = [player,20,true,getPosATL player] call player_alertZombies; uiSleep 0.5; player setDamage 1; 0.1 fadeSound 0; player setVariable ["NORRN_unconscious", false, true]; player setVariable ["unconsciousTime", 0, true]; player setVariable ["USEC_isCardiac",false,true]; player setVariable ["medForceUpdate",true,true]; player setVariable ["bloodTaken", false, true]; player setVariable ["startcombattimer", 0]; r_player_unconscious = false; r_player_cardiac = false; _model = typeOf player; autoRunActive = 0; _array = _this; if (count _array > 0) then { _source = _array select 0; _method = _array select 1; if ((!isNull _source) && (_source != player)) then { _canHitFree = player getVariable ["freeTarget",false]; _isBandit = (player getVariable["humanity",0]) <= -2000; _punishment = _canHitFree || _isBandit; //if u are bandit || start first - player will not recieve humanity drop _humanityHit = 0; if (!_punishment) then { //i'm "not guilty" - kill me && be punished _myKills = ((player getVariable ["humanKills",0]) / 30) * 1000; _humanityHit = -(2000 - _myKills); _kills = _source getVariable ["humanKills",0]; _source setVariable ["humanKills",(_kills + 1),true]; PVDZ_send = [_source,"Humanity",[_source,_humanityHit,300]]; publicVariableServer "PVDZ_send"; } else { //i'm "guilty" - kill me as bandit _killsV = _source getVariable ["banditKills",0]; _source setVariable ["banditKills",(_killsV + 1),true]; }; // START Musty Achievement _killer = _source; // who did the killing _killedachievementID = -1; if (_killer distance _body > 200) then { _killedachievementID = 15; // steady aim achievement_SteadyAim = true; }; if (_killer distance _body > 500) then { _killedachievementID = 16; // marksman achievement_Marksman = true; }; if (_killer distance _body > 1000) then { _killedachievementID = 17; // sniper achievement_Sniper = true; }; if (_killedachievementID > -1) then { if (dayz_playerAchievements select _killedachievementID < 1) then { _killerID = _killer getVariable["characterID",0]; // get his characterID dayz_playerAchievements set [_killedachievementID,1]; achievement = [_killedachievementID, _killer, _killerID]; // publish event to server publicVariableServer "achievement"; }; }; // END Musty Achievement }; _body setVariable ["deathType",_method,true]; }; terminate dayz_musicH; terminate dayz_slowCheck; //terminate dayz_animalCheck; terminate dayz_monitor1; //terminate dayz_medicalH; //terminate dayz_gui; r_player_dead = true; "dynamicBlur" ppEffectEnable true;"dynamicBlur" ppEffectAdjust [4]; "dynamicBlur" ppEffectCommit 0.2; "colorCorrections" ppEffectEnable true; "colorCorrections" ppEffectAdjust [1, 1, 0, [1, 1, 1, 0.0], [1, 1, 1, 0.01], [1, 1, 1, 0.0]]; "colorCorrections" ppEffectCommit 1; //Player is Dead! 3 fadeSound 0; uiSleep 1; dayz_originalPlayer enableSimulation true; addSwitchableUnit dayz_originalPlayer; setPlayable dayz_originalPlayer; selectPlayer dayz_originalPlayer; //_myGroup = group _body; //[_body] joinSilent dayz_firstGroup; //deleteGroup _myGroup; 3 cutRsc ["default", "PLAIN",3]; 4 cutRsc ["default", "PLAIN",3]; _body setVariable["combattimeout", 0, true]; //["dayzFlies",player] call broadcastRpcCallAll; uiSleep 2; 1 cutRsc ["DeathScreen","BLACK OUT",3]; playMusic "dayz_track_death_1"; "dynamicBlur" ppEffectAdjust [0]; "dynamicBlur" ppEffectCommit 5; "colorCorrections" ppEffectAdjust [1, 1, 0, [1, 1, 1, 0.0], [1, 1, 1, 1], [1, 1, 1, 1]];"colorCorrections" ppEffectCommit 5; uiSleep 2; for "_x" from 5 to 1 step -1 do { titleText [format[localize "str_return_lobby", _x], "PLAIN DOWN", 1]; uiSleep 1; }; PVDZ_Server_Simulation = [_body, false]; publicVariableServer "PVDZ_Server_Simulation"; endMission "END1";