diff --git a/SQF/dayz_code/compile/vehicle_handleDamage.sqf b/SQF/dayz_code/compile/vehicle_handleDamage.sqf index ab753a26f..1d4a5a81e 100644 --- a/SQF/dayz_code/compile/vehicle_handleDamage.sqf +++ b/SQF/dayz_code/compile/vehicle_handleDamage.sqf @@ -33,4 +33,45 @@ if (_dam < 1 ) then { }; }; }; -_total \ No newline at end of file +_total + +/* WIP - PVS/PVC - Skaronator - CP out of DayZ Mod 1.8 +private["_unit","_selection","_strH","_total","_damage","_needUpdate"]; + +_unit = _this select 0; +_selection = _this select 1; +_total = _this select 2; + +if (_selection != "") then { + _strH = "hit_" + _selection; +} else { + _strH = "totalDmg"; +}; + +if (_total >= 0.98) then { + _total = 1.0; +}; + +if (local _unit) then { + if (_total > 0) then { + + _unit setVariable [_strH, _total, true]; + _unit setHit [_selection, _total]; + + if (isServer) then { + [_unit, "damage"] call server_updateObject; + } else { + PVDZE_veh_Update = [_unit,"damage"]; + publicVariableServer "PVDZE_veh_Update"; + }; + }; +} else { + // vehicle is not local to this client, ask the client which vehicle is local to set damage + //_this resize 5; // delete "broadcast" boolean + PVDZE_send = [_unit,"VehHandleDam",_this]; + publicVariableServer "PVDZE_send"; +}; + +// all "HandleDamage event" functions should return the effective damage that the engine will record for that part +_total +*/ \ No newline at end of file diff --git a/SQF/dayz_code/init/publicEH.sqf b/SQF/dayz_code/init/publicEH.sqf index f3b874e5e..df969828b 100644 --- a/SQF/dayz_code/init/publicEH.sqf +++ b/SQF/dayz_code/init/publicEH.sqf @@ -26,6 +26,14 @@ "PVDZE_plr_HumanityChange" addPublicVariableEventHandler {(_this select 1) spawn player_humanityChange}; "PVDZE_serverObjectMonitor" addPublicVariableEventHandler {PVDZE_serverObjectMonitor = dayz_safety}; + +/* WIP - PVS/PVC Skaronator + +"PVCDZE_vehSH" addPublicVariableEventHandler {(_this select 1) call vehicle_handleDamage}; // set damage to vehicle part + +*/ + + //Server only if (isServer) then { //WIP - Skaronator diff --git a/SQF/dayz_server/compile/server_sendToClient.sqf b/SQF/dayz_server/compile/server_sendToClient.sqf index e18d75474..b6773d688 100644 --- a/SQF/dayz_server/compile/server_sendToClient.sqf +++ b/SQF/dayz_server/compile/server_sendToClient.sqf @@ -15,8 +15,8 @@ switch (_variable) do { if (local _vehicle) then { _arraytosend call fnc_veh_handleDam; } else { - PVCDZ_veh_SH = _arraytosend; - _owner publicVariableClient "PVCDZ_veh_SH"; + PVCDZE_vehSH = _arraytosend; + _owner publicVariableClient "PVCDZE_vehSH"; }; };