diff --git a/SQF/dayz_code/compile/player_humanityMorph.sqf b/SQF/dayz_code/compile/player_humanityMorph.sqf index 1bfd831ec..2a9b3d462 100644 --- a/SQF/dayz_code/compile/player_humanityMorph.sqf +++ b/SQF/dayz_code/compile/player_humanityMorph.sqf @@ -4,11 +4,12 @@ _charID = _this select 1; _model = _this select 2; _old = player; +_old removeAllEventHandlers "FiredNear"; +_old removeAllEventHandlers "HandleDamage"; +_old removeAllEventHandlers "Killed"; +_old removeAllEventHandlers "Fired"; _old allowDamage false; -player removeEventHandler ["FiredNear",eh_player_killed]; -player removeEventHandler ["HandleDamage",mydamage_eh1]; -player removeEventHandler ["Killed",mydamage_eh3]; -player removeEventHandler ["Fired",mydamage_eh2]; +_old AddEventHandler ["HandleDamage", {False}]; _updates = player getVariable ["updatePlayer",[false,false,false,false,false]]; _updates set [0,true]; @@ -108,6 +109,7 @@ if (Z_SingleCurrency) then { call dayz_resetSelfActions; //New unit has no self actions yet. Reset variables so actions can be added back. dayz_actionInProgress = false; //Allow self actions to run now. +player removeEventHandler ["HandleDamage",mydamage_eh1]; eh_player_killed = player addeventhandler ["FiredNear",{_this call player_weaponFiredNear;}]; [player] call fnc_usec_damageHandle; player allowDamage true; diff --git a/SQF/dayz_code/compile/player_switchModel.sqf b/SQF/dayz_code/compile/player_switchModel.sqf index ea88692e3..57622ead0 100644 --- a/SQF/dayz_code/compile/player_switchModel.sqf +++ b/SQF/dayz_code/compile/player_switchModel.sqf @@ -81,11 +81,12 @@ _leader = (player == leader _oldGroup); _group = createGroup west; _newUnit = _group createUnit [_class,respawn_west_original,[],0,"NONE"]; _newUnit allowDamage false; +mydamage_eh1 = _newUnit AddEventHandler ["HandleDamage", {False}]; _newUnit setDir _dir; {_newUnit removeMagazine _x;} count magazines _newUnit; removeAllWeapons _newUnit; -if (!isnil "_CID") then {_newUnit setVariable ["characterID",_CID,true];}; //set early to prevent dupe +if (!isnil "_CID") then {_newUnit setVariable ["characterID",_CID,true];}; //Equip New Character {