diff --git a/Missionframework/scripts/server/game/zeus_synchro.sqf b/Missionframework/scripts/server/game/zeus_synchro.sqf index 75bb6446..01b116e2 100644 --- a/Missionframework/scripts/server/game/zeus_synchro.sqf +++ b/Missionframework/scripts/server/game/zeus_synchro.sqf @@ -40,13 +40,7 @@ while { true } do { _zgm addCuratorEditableObjects [_zeusunits,true]; _zgm removeCuratorEditableObjects [_units_to_remove,true]; - _zgm setCuratorCoef ["edit", -1e8]; - _zgm setCuratorCoef ["place", -1e8]; - _zgm setCuratorCoef ["synchronize", 0]; - _zgm setCuratorCoef ["delete", 0]; - _zgm setCuratorCoef ["destroy", -1e8]; - } foreach allCurators; sleep 10; -}; \ No newline at end of file +}; diff --git a/Missionframework/scripts/server/init_server.sqf b/Missionframework/scripts/server/init_server.sqf index 2e6ad647..ce2e2d58 100644 --- a/Missionframework/scripts/server/init_server.sqf +++ b/Missionframework/scripts/server/init_server.sqf @@ -126,3 +126,26 @@ execVM "scripts\server\offloading\group_diag.sqf"; if (KP_liberation_restart > 0) then { execVM "scripts\server\game\server_restart.sqf"; }; + +if (KP_liberation_limited_zeus) then { + zm1 setVariable ["Addons", 0, true]; + removeAllCuratorAddons zm1; + + zm1 setCuratorCoef ["edit", -1e8]; + zm1 setCuratorCoef ["place", -1e8]; + zm1 setCuratorCoef ["synchronize", 0]; + zm1 setCuratorCoef ["delete", 0]; + zm1 setCuratorCoef ["destroy", -1e8]; +} else { + zm1 setVariable ["Addons", 3, true]; + removeAllCuratorAddons zm1; + + private _allAddons = ("true" configClasses (configFile >> "CfgPatches")) apply {configName _x}; + zm1 addCuratorAddons _allAddons; + + zm1 setCuratorCoef ["edit", 0]; + zm1 setCuratorCoef ["place", 0]; + zm1 setCuratorCoef ["synchronize", 0]; + zm1 setCuratorCoef ["delete", 0]; + zm1 setCuratorCoef ["destroy", 0]; +}; diff --git a/Missionframework/scripts/shared/fetch_params.sqf b/Missionframework/scripts/shared/fetch_params.sqf index 055d49e1..aa65d42b 100644 --- a/Missionframework/scripts/shared/fetch_params.sqf +++ b/Missionframework/scripts/shared/fetch_params.sqf @@ -54,6 +54,7 @@ if(isServer) then { GET_PARAM_BOOL(KP_liberation_cr_param_buildings, "CR_Building", 0); GET_PARAM_BOOL(KP_liberation_ailogistics, "AiLogistics", 1); GET_PARAM_BOOL(KP_liberation_clear_cargo, "ClearCargo", 1); + GET_PARAM_BOOL(KP_liberation_limited_zeus, "LimitedZeus", 1); GET_PARAM_BOOL(KP_liberation_arsenalUsePreset, "ArsenalUsePreset", 1); GET_PARAM_BOOL(KP_liberation_mapmarkers, "MapMarkers", 1); GET_PARAM_BOOL(KP_liberation_mobilerespawn, "MobileRespawn", 1); @@ -378,6 +379,10 @@ if (!isDedicated && hasInterface) then { _value = if (KP_liberation_clear_cargo) then {localize "STR_PARAMS_ENABLED";} else {localize "STR_PARAMS_DISABLED";}; _text = _text + format ["%1
%2

", _param, _value]; + _param = localize "STR_PARAM_LIMITEDZEUS"; + _value = if (KP_liberation_limited_zeus) then {localize "STR_PARAMS_ENABLED";} else {localize "STR_PARAMS_DISABLED";}; + _text = _text + format ["%1
%2

", _param, _value]; + _param = localize "STR_PERMISSIONS_PARAM"; _value = if (GRLIB_permissions_param) then {localize "STR_PARAMS_ENABLED";} else {localize "STR_PARAMS_DISABLED";}; _text = _text + format ["%1
%2

", _param, _value]; diff --git a/Missionframework/stringtable.xml b/Missionframework/stringtable.xml index 0996c3a9..f502210e 100644 --- a/Missionframework/stringtable.xml +++ b/Missionframework/stringtable.xml @@ -2422,6 +2422,10 @@ Remover carga do veículo requisitado 移除載具上的物品 + + Limited Zeus interface + Eingeschränkte Zeus Funktionen + Deployment in progress... Déploiement en cours... diff --git a/Missionframework/ui/mission_params.hpp b/Missionframework/ui/mission_params.hpp index 5e63077d..f74545ed 100644 --- a/Missionframework/ui/mission_params.hpp +++ b/Missionframework/ui/mission_params.hpp @@ -4,7 +4,7 @@ class Params title = $STR_PARAMS_LOADSAVEPARAMS; values[] = { 0, 1, 2 }; texts[] = { $STR_PARAMS_LOADSAVEPARAMS_SAVE, $STR_PARAMS_LOADSAVEPARAMS_LOAD, $STR_PARAMS_LOADSAVEPARAMS_SELECTED }; - default = 1; + default = 1; // If you want to set mission parameters via server.cfg or this file, then set this value to 2 }; class Spacer0 { title = ""; @@ -264,6 +264,12 @@ class Params texts[] = { $STR_PARAMS_ENABLED, $STR_PARAMS_DISABLED }; default = 1; }; + class LimitedZeus { + title = $STR_PARAM_LIMITEDZEUS; + values[] = {1,0}; + texts[] = { $STR_PARAMS_ENABLED, $STR_PARAMS_DISABLED }; + default = 1; + }; class Spacer3 { title = ""; values[] = { "" }; diff --git a/README.md b/README.md index ede9df14..a351ba94 100644 --- a/README.md +++ b/README.md @@ -190,6 +190,7 @@ class Missions ### 0.96.6 (tbd) * Added: [Swedish Forces Pack](https://steamcommunity.com/sharedfiles/filedetails/?id=826911897) transport configs. Thanks to [Dahlgren](https://github.com/Dahlgren) * Added: Parameter to enable/disable the vanilla A3 dynamic fog behavior. Default enabled, so `fucking_set_fog.sqf` isn't running by default. +* Added: Parameter to enable/disable limitations on Zeus functionalities. Default enabled to keep old behaviour. * Added: Parameter to decide to start the campaign with a FOB container (default, like before) or a FOB truck. * Updated: Russian localization. Thanks to [DjHaski](https://github.com/DjHaski) * Tweaked: Initial FOB box doesn't have equipment in the inventory anmore.