From ed66255b19e40ff4637a081fc75669db1e757ca1 Mon Sep 17 00:00:00 2001 From: Glowbal Date: Sat, 15 Aug 2015 18:39:43 +0200 Subject: [PATCH] Add objects to all curators --- addons/zeus/ACE_Settings.hpp | 6 +++++ addons/zeus/CfgEventHandlers.hpp | 8 +++++++ addons/zeus/XEH_preInit.sqf | 1 + .../zeus/functions/fnc_addObjectToCurator.sqf | 24 +++++++++++++++++++ addons/zeus/stringtable.xml | 8 ++++++- 5 files changed, 46 insertions(+), 1 deletion(-) create mode 100644 addons/zeus/functions/fnc_addObjectToCurator.sqf diff --git a/addons/zeus/ACE_Settings.hpp b/addons/zeus/ACE_Settings.hpp index 388e3c42cb..380cea122f 100644 --- a/addons/zeus/ACE_Settings.hpp +++ b/addons/zeus/ACE_Settings.hpp @@ -20,4 +20,10 @@ class ACE_Settings { value = 0; values[] = {"$STR_A3_OPTIONS_DISABLED", CSTRING(revealMines_partial), CSTRING(revealMines_full)}; }; + class GVAR(autoAddObjects) { + displayName = CSTRING(AddObjectsToCurator); + description = CSTRING(AddObjectsToCurator_descr); + value = 0; + typeName = "BOOL"; + }; }; diff --git a/addons/zeus/CfgEventHandlers.hpp b/addons/zeus/CfgEventHandlers.hpp index f0a9f14d91..dcd6b7410a 100644 --- a/addons/zeus/CfgEventHandlers.hpp +++ b/addons/zeus/CfgEventHandlers.hpp @@ -4,3 +4,11 @@ class Extended_PreInit_EventHandlers { init = QUOTE(call COMPILE_FILE(XEH_preInit)); }; }; + +class Extended_InitPost_EventHandlers { + class AllVehicles { + class ADDON { + init = QUOTE(call FUNC(addObjectToCurator)); + }; + }; +}; diff --git a/addons/zeus/XEH_preInit.sqf b/addons/zeus/XEH_preInit.sqf index 1b2ac19263..c1cbaeea91 100644 --- a/addons/zeus/XEH_preInit.sqf +++ b/addons/zeus/XEH_preInit.sqf @@ -2,6 +2,7 @@ ADDON = false; +PREP(addObjectToCurator); PREP(bi_moduleCurator); PREP(bi_moduleMine); PREP(bi_moduleProjectile); diff --git a/addons/zeus/functions/fnc_addObjectToCurator.sqf b/addons/zeus/functions/fnc_addObjectToCurator.sqf new file mode 100644 index 0000000000..be814266ab --- /dev/null +++ b/addons/zeus/functions/fnc_addObjectToCurator.sqf @@ -0,0 +1,24 @@ +/* + * Author: Glowbal + * Adds an object to curator upon spawn + * + * Arguments: + * Object + * + * Return Value: + * None + * + * Public: No + */ + +#include "script_component.hpp" + +if (!isServer) exitwith {}; + +params ["_object"]; + +if (!(_object getvariable [QGVAR(addObject), GVAR(autoAddObjects)])) exitwith {}; + +{ + _x addCuratorEditableObjects [[_object], true]; +}foreach allCurators; diff --git a/addons/zeus/stringtable.xml b/addons/zeus/stringtable.xml index 7c70978aa4..e8373907f8 100644 --- a/addons/zeus/stringtable.xml +++ b/addons/zeus/stringtable.xml @@ -1,4 +1,4 @@ - + @@ -189,5 +189,11 @@ Benötigt ein Addon, das nicht vorhanden ist Requer um addon que não está presente + + Add Objects to Curator + + + Adds any spawned object to all curators in the mission +