mirror of
https://github.com/EpochModTeam/DayZ-Epoch.git
synced 2025-12-14 04:02:37 +03:00
@@ -15,6 +15,8 @@ _uid = getPlayerUID player;
|
||||
|
||||
_keepOnSlope = 0 == (getNumber (configFile >> "CfgVehicles" >> _classname >> "canbevertical"));
|
||||
|
||||
//_damageArray = (getArray (configFile >> "CfgVehicles" >> _classname >> "damageValues"));
|
||||
|
||||
Dayz_constructionContext set [ 4, false ]; // Stop the construction mode, cf. player_build.sqf
|
||||
|
||||
//if (count Dayz_constructionContext < 5) then { Dayz_constructionContext set [ 5, false ]; // };
|
||||
@@ -61,8 +63,8 @@ if (_build) then {
|
||||
_variables set [ count _variables, ["ownerArray", [getPlayerUID player]]];
|
||||
_variables set [ count _variables, ["padlockCombination", _passcode]];
|
||||
|
||||
_object removeAllEventHandlers "HandleDamage";
|
||||
_object addeventhandler ["HandleDamage",{ diag_log (_this); if ((_this select 4) == 'PipeBomb') then { _this call fnc_Obj_FenceHandleDam; } else { false }; } ];
|
||||
//_object removeAllEventHandlers "HandleDamage";
|
||||
//_object addeventhandler ["HandleDamage",{ [_this,_damageArray] call fnc_Obj_FenceHandleDam; } ];
|
||||
};
|
||||
_object setVariable ["characterID",dayz_characterID, true];
|
||||
|
||||
|
||||
@@ -26,7 +26,7 @@ _show = switch _action do {
|
||||
//Built Items (Fence,Gates)
|
||||
//case "ObjectUpgrade": {CAN_DO && !IN_VEHICLE && !(_object getVariable["BuildLock",false])};
|
||||
//case "ObjectMaintenance": {CAN_DO && !IN_VEHICLE && (_object getVariable["Maintenance",false] or IS_DAMAGED)};
|
||||
//case "ObjectDisassembly": {CAN_DO && !IN_VEHICLE && HAS_TOOLBOX && !(_object getVariable["BuildLock",false]) && ((getPlayerUID player in _object getVariable["ownerArray",[]]) or (count (_object getVariable["ownerArray",[]]) == 0) or (typeOf _object in ["WoodenFence_1_foundation","WoodenGate_foundation"]))};
|
||||
//case "ObjectDisassembly": {CAN_DO && !IN_VEHICLE && HAS_TOOLBOX && !(_object getVariable["BuildLock",false]) && (((getPlayerUID player) in (_object getVariable["ownerArray",[]])) or (count (_object getVariable["ownerArray",[]]) == 0) or (typeOf _object in ["WoodenFence_1_foundation","WoodenGate_foundation"]))};
|
||||
default {false};
|
||||
};
|
||||
|
||||
|
||||
@@ -9,22 +9,25 @@ Metal Defaults - [Object,[High Explosive(0.5),Medium Explosive(0.25),Melee damag
|
||||
|
||||
--Note, Melee damage runs this script 12 times per hit.
|
||||
************************************************************/
|
||||
|
||||
/*
|
||||
private["_obj","_total","_damage"];
|
||||
|
||||
//Object the EH is assigned too
|
||||
_obj = _this select 0;
|
||||
_obj = ((_this select 0) select 0);
|
||||
//array holding dam sent to the eventhandler
|
||||
//_damageArray _this select 1;
|
||||
|
||||
if !((_this select 4) in ["PipeBomb","explosive_bolt","Hatchet_Swing_Ammo","Crowbar_Swing_Ammo","Machete_Swing_Ammo"]) exitwith { false };
|
||||
if !(((_this select 0) select 4) in ["PipeBomb","explosive_bolt","Hatchet_Swing_Ammo","Crowbar_Swing_Ammo","Machete_Swing_Ammo"]) exitwith { false };
|
||||
|
||||
_damage = switch (1==1) do {
|
||||
case ((_this select 4) in ["PipeBomb"]): { ((_this select 1) select 0) }; //0.5 High explosive
|
||||
case ((_this select 4) in ["explosive_bolt"]): { ((_this select 1) select 1) }; //0.25 Medium explosive, maybe grenades and other such items.
|
||||
case ((_this select 4) in ["Hatchet_Swing_Ammo","Crowbar_Swing_Ammo","Machete_Swing_Ammo"]): { ((_this select 1) select 2) + random(0.05) }; //0.00001 Melee damage,
|
||||
default { 0 };
|
||||
case (((_this select 0) select 4) in ["PipeBomb"]): { (((_this select 0) select 1) select 0) }; //0.5 High explosive
|
||||
case (((_this select 0) select 4) in ["explosive_bolt"]): { (((_this select 0) select 1) select 1) }; //0.25 Medium explosive, maybe grenades and other such items.
|
||||
case (((_this select 0) select 4) in ["Hatchet_Swing_Ammo","Crowbar_Swing_Ammo","Machete_Swing_Ammo"]): { (((_this select 0) select 2) + random(0.05) }; //0.00001 Melee damage,
|
||||
//default { 0 };
|
||||
};
|
||||
|
||||
|
||||
//Server running or client
|
||||
if (isServer) then {
|
||||
if !(_obj in needUpdate_FenceObjects) then {
|
||||
@@ -51,7 +54,52 @@ if (isServer) then {
|
||||
//};
|
||||
|
||||
|
||||
diag_log format["Object: %1, Damage:%2(%4), Projectile:%3",typeof (_this select 0),((damage _obj) + _damage),(_this select 4),(damage _obj)];
|
||||
diag_log format["Object: %1, Damage:%2(%4), Projectile:%3",typeof ((_this select 0) select 0),((damage _obj) + _damage),((_this select 0) select 4),(damage _obj)];
|
||||
*/
|
||||
|
||||
private["_obj","_damage"];
|
||||
|
||||
//[_this,[0.5,0.25,0.00001]]
|
||||
|
||||
if !(((_this select 0) select 4) in ["PipeBomb","explosive_bolt","Hatchet_Swing_Ammo","Crowbar_Swing_Ammo","Machete_Swing_Ammo"]) exitwith { false };
|
||||
|
||||
|
||||
_obj = ((_this select 0) select 0);
|
||||
//_selectionName = ((_this select 0) select 1);
|
||||
//_damage = ((_this select 0) select 2);
|
||||
//_source = ((_this select 0) select 3);
|
||||
//_projectile = ((_this select 0) select 4);
|
||||
|
||||
//_damageArray = (_this select 1);
|
||||
|
||||
_damage = switch (1==1) do {
|
||||
case (((_this select 0) select 4) in ["PipeBomb"]): { ((_this select 1) select 0) }; //0.5 High explosive
|
||||
case (((_this select 0) select 4) in ["explosive_bolt"]): { ((_this select 1) select 1) }; //0.25 Medium explosive, maybe grenades and other such items.
|
||||
case (((_this select 0) select 4) in ["Hatchet_Swing_Ammo","Crowbar_Swing_Ammo","Machete_Swing_Ammo"]): { ((_this select 1) select 2) + random(0.0005) }; //0.00001 Melee damage,
|
||||
//default { 0 };
|
||||
};
|
||||
|
||||
/*
|
||||
//Server running or client
|
||||
if (isServer) then {
|
||||
if !(_obj in needUpdate_FenceObjects) then {
|
||||
needUpdate_FenceObjects set [count needUpdate_FenceObjects, _obj];
|
||||
};
|
||||
|
||||
//TotalDamage Set by the server
|
||||
_obj setDamage (damage _obj) + _damage;
|
||||
|
||||
//diag_log format["Server Reporting - %1",needUpdate_FenceObjects];
|
||||
} else {
|
||||
//If its a client send to server for saving and damage setting.
|
||||
PVDZ_fence_Update = [_obj,(damage _obj) + _damage];
|
||||
publicVariableServer "PVDZ_fence_Update";
|
||||
|
||||
//diag_log ("Client Reporting");
|
||||
};
|
||||
*/
|
||||
|
||||
diag_log format["Object: %1, Damage:%4 + %5(%2), Projectile:%3",(typeof _obj),((damage _obj) + _damage),((_this select 0) select 4),(damage _obj),_damage];
|
||||
|
||||
// all "HandleDamage event" functions should return the effective damage that the engine will record for that part
|
||||
false
|
||||
(damage _obj) + _damage
|
||||
@@ -1724,11 +1724,11 @@
|
||||
<German>Wartung</German>
|
||||
</Key>
|
||||
<Key ID="str_disassembly">
|
||||
<English>%1 Disassembly</English>
|
||||
<Russian>%1 Разборка</Russian>
|
||||
<French>Démonter la %1</French>
|
||||
<Czech>Demontáž %1</Czech>
|
||||
<German>%1 abbauen</German>
|
||||
<English>Disassembly</English>
|
||||
<Russian>Разборка</Russian>
|
||||
<French>Démonter la</French>
|
||||
<Czech>Demontáž</Czech>
|
||||
<German>abbauen</German>
|
||||
</Key>
|
||||
<Key ID="str_build">
|
||||
<English>Build %1</English>
|
||||
|
||||
Reference in New Issue
Block a user