From 56a539ee55e69708df8043eec7dcaad5d54fcb91 Mon Sep 17 00:00:00 2001 From: He-Man Date: Tue, 1 Jan 2019 03:56:02 +0100 Subject: [PATCH] Compatibility to Enhanced Movement Not tested - Feedback required!!! --- Server_Install_Pack/@epochhive/epochconfig.hpp | 6 ++++++ .../compile/epoch_bases/EPOCH_server_loadBuildings.sqf | 5 +++++ .../epoch_server/compile/epoch_bases/EPOCH_swapBuilding.sqf | 5 +++++ 3 files changed, 16 insertions(+) diff --git a/Server_Install_Pack/@epochhive/epochconfig.hpp b/Server_Install_Pack/@epochhive/epochconfig.hpp index a83fe740..5eed1b30 100644 --- a/Server_Install_Pack/@epochhive/epochconfig.hpp +++ b/Server_Install_Pack/@epochhive/epochconfig.hpp @@ -118,6 +118,12 @@ forceRestartTime = 14400; // 4 hour restarts }; ExceptedDeSymObjects[] = { // Not Desymulated, also if in a Class of DeSimulateObjects }; + DisableDoorsOnObj[] = { // Add speacial Vars to disable Doors (no effect in Epoch, but 3rd party addons like enhanced movement) + "WoodLargeWallDoorL_EPOCH", + "WoodWall4_EPOCH", + "WoodLargeWallDoorL_EPOCH", + "CinderWallDoorwHatch_EPOCH" + }; // Dynamic Simulation System enableDynamicSimulationSystem = "true"; // enable / disable the complete dynamic simulation system diff --git a/Sources/epoch_server/compile/epoch_bases/EPOCH_server_loadBuildings.sqf b/Sources/epoch_server/compile/epoch_bases/EPOCH_server_loadBuildings.sqf index f25ebf81..7fa952f8 100644 --- a/Sources/epoch_server/compile/epoch_bases/EPOCH_server_loadBuildings.sqf +++ b/Sources/epoch_server/compile/epoch_bases/EPOCH_server_loadBuildings.sqf @@ -26,6 +26,7 @@ _ExceptedBaseObjects = [_serverSettingsConfig, "ExceptedBaseObjects", []] call E _UseDeSimulateObjects = [_serverSettingsConfig, "UseDeSimulateObjects", true] call EPOCH_fnc_returnConfigEntry; _DeSimulateObjects = [_serverSettingsConfig, "DeSimulateObjects", []] call EPOCH_fnc_returnConfigEntry; _ExceptedDeSymObjects = [_serverSettingsConfig, "ExceptedDeSymObjects", []] call EPOCH_fnc_returnConfigEntry; +_DisableDoorsOnObj = [_serverSettingsConfig, "DisableDoorsOnObj", []] call EPOCH_fnc_returnConfigEntry; _cfgEpochClient = 'CfgEpochClient' call EPOCH_returnConfig; _cfgBaseBuilding = 'CfgBaseBuilding' call EPOCH_returnConfig; _buildingJammerRange = getNumber(_cfgEpochClient >> "buildingJammerRange"); @@ -88,6 +89,10 @@ for "_i" from 0 to _this do { if (isClass (configFile >> "CfgVehicles" >> _class) && (_damage < 1) && !(_class isKindOf 'Constructions_lockedstatic_F')) then { _baseObj = createVehicle [_class, [0,0,0], [], 0, "CAN_COLLIDE"]; + if (_class in _DisableDoorsOnObj) then { + _baseObj setvariable ["bis_disabled_door",1,true]; + _baseObj setvariable ["bis_disabled_hatch",1,true]; + }; if (_UseIndestructible) then { if ({_class iskindof _x} count _ExceptedBaseObjects == 0) then { { diff --git a/Sources/epoch_server/compile/epoch_bases/EPOCH_swapBuilding.sqf b/Sources/epoch_server/compile/epoch_bases/EPOCH_swapBuilding.sqf index 1d2e8f9a..306f76e1 100644 --- a/Sources/epoch_server/compile/epoch_bases/EPOCH_swapBuilding.sqf +++ b/Sources/epoch_server/compile/epoch_bases/EPOCH_swapBuilding.sqf @@ -32,6 +32,11 @@ if (!isNull _object && !(_class isEqualTo "")) then { _UseIndestructible = [_serverSettingsConfig, "UseIndestructible", false] call EPOCH_fnc_returnConfigEntry; _IndestructibleBaseObjects = [_serverSettingsConfig, "IndestructibleBaseObjects", []] call EPOCH_fnc_returnConfigEntry; _ExceptedBaseObjects = [_serverSettingsConfig, "ExceptedBaseObjects", []] call EPOCH_fnc_returnConfigEntry; + _DisableDoorsOnObj = [_serverSettingsConfig, "DisableDoorsOnObj", []] call EPOCH_fnc_returnConfigEntry; + if (_class in _DisableDoorsOnObj) then { + _baseObj setvariable ["bis_disabled_door",1,true]; + _baseObj setvariable ["bis_disabled_hatch",1,true]; + }; if (_UseIndestructible) then { if ({_class iskindof _x} count _ExceptedBaseObjects == 0) then { {