From 94b2687dc90255fd800665db18c350c6c3c2a27d Mon Sep 17 00:00:00 2001 From: vbawol Date: Thu, 21 Mar 2013 16:02:14 -0500 Subject: [PATCH] changed humanity logic kill a person with 0 kills and 2500 humanity and receive -2000 humanity hit. kill a person with 10 kills and 15000 humanity and receive -2500 humanity hit. kill a person with 10 kills and -25000 humanity and receive 1500 humanity gain. --- dayz_code/compile/player_death.sqf | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) 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";