diff --git a/dayz_code/compile/player_death.sqf b/dayz_code/compile/player_death.sqf index e1a8dd433..f08a3c878 100644 --- a/dayz_code/compile/player_death.sqf +++ b/dayz_code/compile/player_death.sqf @@ -45,25 +45,26 @@ if (count _array > 0) then { if (!isNull _source) then { if (_source != player) then { _canHitFree = player getVariable ["freeTarget",false]; - _isBandit = (["Bandit",typeOf player,false] call fnc_inString); - _myKills = ((player getVariable ["humanKills",0]) / 30) * 1000; - if (!_canHitFree and !_isBandit) then { + _myHumanity = ((player getVariable ["humanity",0]) / 10); + _myKills = ((player getVariable ["humanKills",0]) / 5) * (1000 - _myHumanity); + + if (!_canHitFree) then { //Process Morality Hit _humanity = -(2000 - _myKills); - _kills = _source getVariable ["humanKills",0]; + _kills = _source getVariable ["humanKills",0]; _source setVariable ["humanKills",(_kills + 1),true]; _wait = 300; } else { //Process Morality Hit //_humanity = _myKills * 100; - _killsV = _source getVariable ["banditKills",0]; + _killsV = _source getVariable ["banditKills",0]; _source setVariable ["banditKills",(_killsV + 1),true]; _wait = 0; }; if (_humanity < 0) then { _wait = 0; }; - if (!_canHitFree and !_isBandit) then { + if (!_canHitFree) then { //["dayzHumanity",[_source,_humanity,_wait]] call broadcastRpcCallAll; dayzHumanity = [_source,_humanity,_wait]; publicVariable "dayzHumanity";