mirror of
https://github.com/EpochModTeam/DayZ-Epoch.git
synced 2025-12-14 20:13:13 +03:00
@@ -1,4 +1,4 @@
|
|||||||
private ["_array","_source","_kills","_killsV","_humanity","_wait","_myKills","_infected","_canHitFree","_myHumanity","_method","_body","_playerID","_id","_myGroup"];
|
private ["_array","_source","_kills","_killsB","_humanity","_wait","_myKills","_infected","_canHitFree","_myHumanity","_method","_body","_playerID","_id","_myGroup","_isBandit","_bonus","_humanitylevel","_isPZombie","_killsZ"];
|
||||||
if (deathHandled) exitWith {};
|
if (deathHandled) exitWith {};
|
||||||
|
|
||||||
deathHandled = true;
|
deathHandled = true;
|
||||||
@@ -37,6 +37,7 @@ r_player_cardiac = false;
|
|||||||
|
|
||||||
_humanity = 0;
|
_humanity = 0;
|
||||||
_wait = 0;
|
_wait = 0;
|
||||||
|
_bonus = 0;
|
||||||
|
|
||||||
_array = _this;
|
_array = _this;
|
||||||
if (count _array > 0) then {
|
if (count _array > 0) then {
|
||||||
@@ -45,30 +46,64 @@ if (count _array > 0) then {
|
|||||||
if (!isNull _source) then {
|
if (!isNull _source) then {
|
||||||
if (_source != player) then {
|
if (_source != player) then {
|
||||||
_canHitFree = player getVariable ["freeTarget",false];
|
_canHitFree = player getVariable ["freeTarget",false];
|
||||||
|
_isBandit = (player getVariable["humanity",0]) <= -5000;
|
||||||
|
_isPZombie = player isKindOf "PZombie_VB";
|
||||||
|
if (!_canHitFree and !_isBandit and !_isPZombie) then {
|
||||||
_myHumanity = ((player getVariable ["humanity",0]) / 10);
|
_myHumanity = ((player getVariable ["humanity",0]) / 10);
|
||||||
_myKills = ((player getVariable ["humanKills",0]) / 5) * (1000 - _myHumanity);
|
_myKills = ((player getVariable ["humanKills",0]) / 5) * (1000 - _myHumanity);
|
||||||
|
|
||||||
if (!_canHitFree) then {
|
|
||||||
//Process Morality Hit
|
//Process Morality Hit
|
||||||
_humanity = -(2000 - _myKills);
|
_humanity = -(1000 - _myKills); //2000
|
||||||
_kills = _source getVariable ["humanKills",0];
|
_kills = _source getVariable ["humanKills",0];
|
||||||
_source setVariable ["humanKills",(_kills + 1),true];
|
_source setVariable ["humanKills",(_kills + 1),true];
|
||||||
_wait = 300;
|
_wait = 300;
|
||||||
} else {
|
} else {
|
||||||
//Process Morality Hit
|
if (_isBandit and !_isPZombie) then {
|
||||||
//_humanity = _myKills * 100;
|
//Process Morality Gain
|
||||||
_killsV = _source getVariable ["banditKills",0];
|
_myHumanity = ((player getVariable ["humanity",0]) / 35);
|
||||||
_source setVariable ["banditKills",(_killsV + 1),true];
|
_myKills = 1 min (0 + (player getVariable ["humanKills",0]) / 15);
|
||||||
_wait = 0;
|
_humanitylevel = (player getVariable ["humanity",0]);
|
||||||
|
|
||||||
|
if (_humanitylevel >= -100000) then {
|
||||||
|
_bonus = 100;
|
||||||
|
} else {
|
||||||
|
_humanitylevel = (_humanitylevel / -1000);
|
||||||
|
_bonus = 500 min _humanitylevel;
|
||||||
|
};
|
||||||
|
|
||||||
|
_humanity = (-(_myHumanity * _myKills)); // 500 min (+ 25) ()
|
||||||
|
_humanity = 1000 min (_humanity + _bonus); // 25 _bonus
|
||||||
|
_killsB = _source getVariable ["banditKills",0];
|
||||||
|
_source setVariable ["banditKills",(_killsB + 1),true];
|
||||||
|
_wait = 0;
|
||||||
|
};
|
||||||
|
if (_isBandit and !_isPZombie and (_humanity != 0)) then {
|
||||||
|
PVDZE_plr_HumanityChange = [_source,_humanity,_wait];
|
||||||
|
publicVariable "PVDZE_plr_HumanityChange";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
if (_humanity < 0) then {
|
if (_humanity < 0) then {
|
||||||
_wait = 0;
|
_wait = 0;
|
||||||
};
|
};
|
||||||
if (!_canHitFree) then {
|
if (!_canHitFree and !_isBandit and !_isPZombie and (_humanity != 0)) then {
|
||||||
//["PVDZE_plr_HumanityChange",[_source,_humanity,_wait]] call broadcastRpcCallAll;
|
|
||||||
PVDZE_plr_HumanityChange = [_source,_humanity,_wait];
|
PVDZE_plr_HumanityChange = [_source,_humanity,_wait];
|
||||||
publicVariable "PVDZE_plr_HumanityChange";
|
publicVariable "PVDZE_plr_HumanityChange";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
if (_isPZombie) then {
|
||||||
|
_humanity = 100; //25
|
||||||
|
_killsZ = _source getVariable ["zombieKills",0];
|
||||||
|
_source setVariable ["zombieKills",(_killsZ + 1),true];
|
||||||
|
_wait = 0;
|
||||||
|
PVDZE_plr_HumanityChange = [_source,_humanity,_wait];
|
||||||
|
publicVariable "PVDZE_plr_HumanityChange";
|
||||||
|
};
|
||||||
|
if (_canHitFree) then {
|
||||||
|
//_humanity = 100; //50
|
||||||
|
_killsB = _source getVariable ["banditKills",0];
|
||||||
|
_source setVariable ["banditKills",(_killsB + 1),true];
|
||||||
|
_wait = 0;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
_body setVariable ["deathType",_method,true];
|
_body setVariable ["deathType",_method,true];
|
||||||
|
|||||||
Reference in New Issue
Block a user