Add exception in REsec for death messages

This commit is contained in:
ebaydayz
2016-04-20 11:53:30 -04:00
parent 5308445f4c
commit 9d4bd9221a
26 changed files with 74 additions and 50 deletions

View File

@@ -73,7 +73,6 @@
[FIXED] DZE_BuildingLimit now counts buildables only instead of all object types. Thanks jOoPs @ebaydayz
[FIXED] Reworked death messages. Fixed messages not always showing, undefined errors and wrong distance bug. Added bled out, killed by zombie, etc. MPHit event handler (fnc_plyrHit) is no longer needed. @ebaydayz
[UPDATED] Keyboard eventhandler updated, dayz_spaceInterupt is no longer used
[UPDATED] .hpp files updated in dayz_epoch_b CfgLootPos > CfgBuildingPos. @Uro1
[UPDATED] .bat files updated in Config-Examples @Raziel23x
[UPDATED] Updated all config.cfg in Config-Examples, Added Default Steam Ports and Updated Layout. @Namindu

View File

@@ -3,6 +3,7 @@
- Duplicate functions have been renamed:
- dayz_HungerThirst --> dayz_NutritionSystem
- dayz_objectUID3 --> dayz_objectUID2
- DZE_getModelName --> fn_getModelName
- fnc_usec_playerBleed --> fnc_usec_playerHandleBlood
- object_handleServerKilled --> vehicle_handleServerKilled
- object_setFixServer --> fnc_veh_setFixServer
@@ -17,6 +18,7 @@
- dayz_fullMoonNights --> dayz_ForcefullmoonNights
- dayz_updateObjects --> DayZ_GearedObjects
- DZE_CanPickup --> canPickup
- DZE_trees --> dayz_trees
- freeTarget --> OpenTarget
- PVDZE_serverObjectMonitor --> dayz_serverObjectMonitor

View File

@@ -0,0 +1,40 @@
/*
Spawns objects locally for improved performance.
- Recommend running on every machine including the server, so all units know about the object.
- Recommend running early during initialization, so units spawned on top do not fall through.
- Not recommended for destructible or removable objects. Damage and deleted status are not synced across machines.
- Not recommended for objects with animations (like gates). Anim status is not synced across machines.
Params:
[
["ObjectType1", [position], dir],
["ObjectType2", [position], dir],
["ObjectType3", [position], dir]
] call local_spawnObjects;
*/
private ["_fires","_object","_type"];
_fires = [
"Base_Fire_DZ",
"flamable_DZ",
"Land_Camp_Fire_DZ",
"Land_Campfire",
"Land_Campfire_burning",
"Land_Fire",
"Land_Fire_burning",
"Land_Fire_DZ",
"Land_Fire_barrel",
"Land_Fire_barrel_burning",
"Misc_TyreHeap"
];
{
_type = _x select 0;
_object = _type createVehicleLocal (_x select 1);
_object setDir (_x select 2);
_object setPos (_x select 1);
_object allowDamage false;
if !(_type in _fires) then {_object enableSimulation false;};
_object setVariable ["", true]; // stops global setVariable by sched_townGenerator, checked in player_spawnCheck for loot spawn
} count _this;

View File

@@ -1,25 +0,0 @@
private ["_fires","_object","_type"];
_fires = [
"Base_Fire_DZ",
"flamable_DZ",
"Land_Camp_Fire_DZ",
"Land_Campfire",
"Land_Campfire_burning",
"Land_Fire",
"Land_Fire_burning",
"Land_Fire_DZ",
"Land_Fire_barrel",
"Land_Fire_barrel_burning",
"Misc_TyreHeap"
];
{
_type = _x select 0;
_object = _type createVehicleLocal (_x select 1);
_object setDir (_x select 2);
_object setPos (_x select 1);
_object allowDamage false;
if !(_type in _fires) then {_object enableSimulation false;};
_object setVariable ["", true]; // stops global setVariable by sched_townGenerator
} count _this;

View File

@@ -22,6 +22,7 @@ DynamicVehicleFuelHigh = 100; // Max fuel random vehicles can spawn with
DZE_AntiWallLimit = 3; // Number of activations before player_antiWall kills player for glitching attempt. Lower is stricter, but may result in false positives.
DZE_DamageBeforeMaint = 0.09; // Minimum damage built items must have before they can be maintained
DZE_DeathMsgDynamicText = false; // Display death messages as dynamicText in the top left with weapon icons.
DZE_DeathMsgGlobal = false; // Display death messages in global chat
DZE_DeathMsgSide = false; // Display death messages in side chat
DZE_DeathMsgTitleText = false; // Display death messages as title text

View File

@@ -559,7 +559,7 @@ call compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\psrnd.sqf";
// EPOCH ADDITIONS
local_lockUnlock = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\local_lockUnlock.sqf"; //When vehicle is local to unit perform locking vehicle
local_gutObjectZ = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\local_gutObjectZ.sqf"; //Generated on the server (or local to unit) when gutting an object
local_spawnTraderCities = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\local_spawnTraderCities.sqf";
local_spawnObjects = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\local_spawnObjects.sqf";
FNC_GetPlayerUID = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\fnc_getPlayerUID.sqf";
FNC_GetSetPos = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\fnc_getSetPos.sqf";
FNC_GetPos = compile preprocessFileLineNumbers "\z\addons\dayz_code\compile\fnc_getPos.sqf";

View File

@@ -17,7 +17,14 @@ private["_ofn","_nfn"];
}foreach TRACED_LIB;
{
_ofn=format["r%1code",_x];
_nfn=format["r%1code%2",_x,round(random(100000))];
//rSpawn is needed on clients only if one of these death message types is enabled
if (_x == "spawn" && {!isDedicated} && {DZE_DeathMsgDynamicText or DZE_DeathMsgGlobal or DZE_DeathMsgSide}) then {
// treat as traced on clients
call compile format["%1=%2;%2={diag_log(""Allowed RE on clients for death message %2 args:""+str(_this));_this call %1};",_nfn,_ofn];
} else {
call compile format["%1={diag_log(""WARNING illegal RE %1 with args:""+str(_this));};",_ofn];
};
}foreach REMOVED_LIB;
#ifndef SKIP_REMOTEEXECUTIONSERVER

View File

@@ -263,4 +263,4 @@
["Land_Panelak",[3205.56,3115.54,4.57764e-005],22.4148],
["Land_Panelak",[2701.28,2857.08,-0.00298309],2.37132],
["Land_Panelak2",[2833.77,2849.69,-0.0144768],3.58606]
] call local_spawnTraderCities;
] call local_spawnObjects;

View File

@@ -169,4 +169,4 @@
["MAP_R2_RockWall",[13881,11792.8,-14.3209],142.299],
["MAP_R2_RockTower",[13827.3,11770.9,-13.6761],0],
["MAP_R2_Rock1",[13817.8,11746.1,-27.2185],68.5491]
] call local_spawnTraderCities;
] call local_spawnObjects;

View File

@@ -315,4 +315,4 @@
["MAP_R2_RockWall",[13881,11792.8,-14.3209],142.299],
["MAP_R2_RockTower",[13827.3,11770.9,-13.6761],0],
["MAP_R2_Rock1",[13817.8,11746.1,-27.2185],68.5491]
] call local_spawnTraderCities;
] call local_spawnObjects;

View File

@@ -169,4 +169,4 @@
["Land_Fire_barrel",[4353.02,3655.65,0],48.8184],
["Land_Fire_barrel",[3390.93,4098.64,-1.52588e-005],153.856],
["Land_A_Hospital",[3307.93,1509.43,-1.14441e-005],0.916192]
] call local_spawnTraderCities;
] call local_spawnObjects;

View File

@@ -156,4 +156,4 @@
["Info_Board_EP1",[9761.01,4032.71,-3.52859e-005],57.3271],
["Info_Board_EP1",[13575.6,7499.29,0.000282288],90.123],
["HeliHCivil",[7990.66,10591.1,2.47955e-005],0]
] call local_spawnTraderCities;
] call local_spawnObjects;

View File

@@ -300,4 +300,4 @@
["MAP_Barbedwire",[8410.45,3359.27,6.77109e-005],342.125],
["ASC_EU_LHSOld",[8410.74,3380.06,6.67572e-006],0],
["ASC_EU_LHSOld",[8418.09,3380.07,4.76837e-006],0]
] call local_spawnTraderCities;
] call local_spawnObjects;

View File

@@ -243,4 +243,4 @@
["HeliHEmpty",[9297.45,3854.4,1.33514e-005],0.000364386],
["HeliHCivil",[4210.44,1480.93,0],0],
["Land_HBarrier_large",[4148.3,1479.76,0.0176926],92.8137]
] call local_spawnTraderCities;
] call local_spawnObjects;

View File

@@ -114,4 +114,4 @@
["Land_Fire_barrel_burning",[6294.21,9927.04,0.573409],0],
["FlagCarrierTFKnight_EP1",[6276.49,9401.92,-0.090519],82.954],
["Land_Fire_barrel_burning",[6275.86,9406.17,0],358.888]
] call local_spawnTraderCities;
] call local_spawnObjects;

View File

@@ -260,4 +260,4 @@
["Land_HBarrier3",[15473.1,13212.3,-0.00374699],106.213],
["Land_HBarrier3",[15455.8,13214.6,0.00995064],297.611],
["Land_HBarrier3",[15507,13213.2,0.228428],99.1406]
] call local_spawnTraderCities;
] call local_spawnObjects;

View File

@@ -115,4 +115,4 @@
["Land_Fire_barrel",[7223.86,733.89,0.000946999],0.0379978],
["Land_Fire_barrel",[4409.02,1627.98,0.000356674],122.863],
["Land_Fire_barrel",[3794.43,7652.93,3.1340871],0]
] call local_spawnTraderCities;
] call local_spawnObjects;

View File

@@ -290,4 +290,4 @@
["FlagCarrierOPFOR_EP1",[931.994,1211.14,0.0169449],198.708],
["FlagCarrierOPFOR_EP1",[944.925,1178.76,5.71742],198.708],
["FlagCarrierOPFOR_EP1",[948.911,1174.81,5.66268],198.708]
] call local_spawnTraderCities;
] call local_spawnObjects;

View File

@@ -427,4 +427,4 @@
["Misc_cargo_cont_net3",[2445.79,3894.76,0.0341797],264.582],
["FoldChair",[2446.56,3898.81,0.000793457],103.739],
["FoldTable",[2444.96,3899.14,0.000640869],267.556]
] call local_spawnTraderCities;
] call local_spawnObjects;

View File

@@ -61,4 +61,4 @@
["BMP2Wreck",[472.932,1069.16,0.0105076],54.1738],
["Misc_palletsfoiled_heap",[496.077,1082.61,-0.00848007],62.6169],
["Info_Board_EP1",[505.839,1120,0.00104141],40.2667]
] call local_spawnTraderCities;
] call local_spawnObjects;

View File

@@ -145,4 +145,4 @@
["Misc_cargo_cont_small2",[13246.9,11188.1,7.62939e-006],88.3989],
["AmmoCrate_NoInteractive_",[13244.1,11192.5,7.62939e-006],0],
["AmmoCrates_NoInteractive_Large",[13247.3,11189.7,-1.90735e-006],0]
] call local_spawnTraderCities;
] call local_spawnObjects;

View File

@@ -308,4 +308,4 @@
["LADAWreck",[10867.4,6319.59,0.00982666],359.859],
["FoldTable",[422.854,5589.3,0.00149536],17.7976],
["Misc_cargo_cont_net1",[428.667,5574.01,0.000213623],323.529]
] call local_spawnTraderCities;
] call local_spawnObjects;

View File

@@ -723,4 +723,4 @@
["MAP_R2_RockWall",[7440.15,5567.71,-20.5011],112.729],
["MAP_R2_RockWall",[7494.54,5608.71,-20.677],290.173],
["MAP_R2_RockWall",[7512.41,5583.7,-12.2722],171.501]
] call local_spawnTraderCities;
] call local_spawnObjects;

View File

@@ -58,4 +58,4 @@
["Fort_StoneWall_EP1",[4022.83,2882.98,0.0588207],342.867],
["T72Wreck",[4022.61,2917.04,0.0561008],339.954],
["Info_Board_EP1",[4012.73,2897.31,0.00329018],262.568]
] call local_spawnTraderCities;
] call local_spawnObjects;

View File

@@ -84,4 +84,4 @@
["Land_Fire_barrel",[3577.17,6830.6,0.000236511],359.997],
["Info_Board_EP1",[3612.99,6829.27,0.000593185],86.5122],
["Land_Fire_barrel",[4723.34,833.238,0.000152588],0.00214848]
] call local_spawnTraderCities;
] call local_spawnObjects;

View File

@@ -61,10 +61,10 @@ if (_killerMethod in ["starve","dehyd","sick","bled","crushed","rad","zombie"])
if ((_killerWeapon != "unknown weapon") or {_killerMethod != "unknown"} or {_killerName != "unknown"}) then {
diag_log _message;
//if (DZE_DeathMsgGlobal) then {customRemoteMessage = ['globalChat',_message,_newObject]; publicVariable "customRemoteMessage";};
if (DZE_DeathMsgGlobal) then {[nil,nil,rspawn,[_newObject,_message],{(_this select 0) globalChat (_this select 1)}] call RE;};
if (DZE_DeathMsgSide) then {[nil,nil,rspawn,[_newObject,_message],{(_this select 0) sideChat (_this select 1)}] call RE;};
if (DZE_DeathMsgTitleText) then {[nil,nil,"per",rTITLETEXT,_message,"PLAIN DOWN"] call RE;};
// Use FunctionsManager logic unit (BIS_functions_mainscope) to send chat messages so no side or quotation marks are shown
if (DZE_DeathMsgGlobal) then {[nil,nil,rspawn,[BIS_functions_mainscope,_message],{(_this select 0) globalChat (_this select 1)}] call RE;};
if (DZE_DeathMsgSide) then {[nil,nil,rspawn,[BIS_functions_mainscope,_message],{(_this select 0) sideChat (_this select 1)}] call RE;};
if (DZE_DeathMsgTitleText) then {[nil,nil,"per",rTITLETEXT,("\n\n" + _message),"PLAIN DOWN"] call RE;};
// Store death messages to allow viewing at message board in trader citys.
PlayerDeaths set [count PlayerDeaths,[_playerName,_killerName,_killerWeapon,_distance,ServerCurrentTime]];