From 3daec7d98d707b0d429b1e2d19306a4762c14b93 Mon Sep 17 00:00:00 2001 From: PabstMirror Date: Sun, 17 May 2015 13:51:59 -0500 Subject: [PATCH] Fix UAV and Interaction Compile Inheritance --- .../functions/fnc_compileMenu.sqf | 8 ++++---- .../functions/fnc_compileMenuSelfAction.sqf | 8 ++++---- addons/logistics_uavbattery/CfgVehicles.hpp | 20 ++++++++++++++----- 3 files changed, 23 insertions(+), 13 deletions(-) diff --git a/addons/interact_menu/functions/fnc_compileMenu.sqf b/addons/interact_menu/functions/fnc_compileMenu.sqf index 7b995375b7..4302f9e336 100644 --- a/addons/interact_menu/functions/fnc_compileMenu.sqf +++ b/addons/interact_menu/functions/fnc_compileMenu.sqf @@ -26,12 +26,12 @@ if !(isNil {missionNamespace getVariable [_actionsVarName, nil]}) exitWith {}; private "_recurseFnc"; _recurseFnc = { - private ["_actions", "_displayName", "_distance", "_icon", "_statement", "_position", "_condition", "_showDisabled", "_enableInside", "_canCollapse", "_runOnHover", "_children", "_entry", "_entryCfg", "_insertChildren", "_modifierFunction", "_i"]; + private ["_actions", "_displayName", "_distance", "_icon", "_statement", "_position", "_condition", "_showDisabled", "_enableInside", "_canCollapse", "_runOnHover", "_children", "_entry", "_entryCfg", "_insertChildren", "_modifierFunction"]; EXPLODE_1_PVT(_this,_actionsCfg); _actions = []; - for "_i" from 0 to (count _actionsCfg) - 1 do { - _entryCfg = _actionsCfg select _i; + { + _entryCfg = _x; if(isClass _entryCfg) then { _displayName = getText (_entryCfg >> "displayName"); _distance = getNumber (_entryCfg >> "distance"); @@ -90,7 +90,7 @@ _recurseFnc = { ]; _actions pushBack _entry; }; - }; + } forEach (configProperties [_actionsCfg, "isClass _x", true]); _actions }; diff --git a/addons/interact_menu/functions/fnc_compileMenuSelfAction.sqf b/addons/interact_menu/functions/fnc_compileMenuSelfAction.sqf index e767c3525d..b09b67d048 100644 --- a/addons/interact_menu/functions/fnc_compileMenuSelfAction.sqf +++ b/addons/interact_menu/functions/fnc_compileMenuSelfAction.sqf @@ -14,7 +14,7 @@ EXPLODE_1_PVT(_this,_target); -private ["_objectType","_actionsVarName", "_canCollapse", "_children", "_enableInside", "_entry", "_entryCfg", "_i", "_insertChildren", "_modifierFunction", "_runOnHover"]; +private ["_objectType","_actionsVarName", "_canCollapse", "_children", "_enableInside", "_entry", "_entryCfg", "_insertChildren", "_modifierFunction", "_runOnHover"]; _objectType = _target; if (typeName _target == "OBJECT") then { _objectType = typeOf _target; @@ -31,8 +31,8 @@ _recurseFnc = { EXPLODE_1_PVT(_this,_actionsCfg); _actions = []; - for "_i" from 0 to (count _actionsCfg) - 1 do { - _entryCfg = _actionsCfg select _i; + { + _entryCfg = _x; if(isClass _entryCfg) then { _displayName = getText (_entryCfg >> "displayName"); @@ -74,7 +74,7 @@ _recurseFnc = { ]; _actions pushBack _entry; }; - }; + } forEach (configProperties [_actionsCfg, "isClass _x", true]); _actions }; diff --git a/addons/logistics_uavbattery/CfgVehicles.hpp b/addons/logistics_uavbattery/CfgVehicles.hpp index 5feba4c9a8..c82938942f 100644 --- a/addons/logistics_uavbattery/CfgVehicles.hpp +++ b/addons/logistics_uavbattery/CfgVehicles.hpp @@ -1,15 +1,25 @@ class CfgVehicles { - class Helicopter_Base_F; - class UAV_01_base_F: Helicopter_Base_F { + class Air; + class Helicopter: Air { class ACE_Actions { - class ACE_MainActions { + class ACE_MainActions {}; + }; + }; + class Helicopter_Base_F: Helicopter { + class ACE_Actions: ACE_Actions{ + class ACE_MainActions: ACE_MainActions {}; + }; + }; + class UAV_01_base_F: Helicopter_Base_F { + class ACE_Actions: ACE_Actions{ + class ACE_MainActions: ACE_MainActions { class GVAR(RefuelUAV) { displayName = "$STR_ACE_logistics_uavbattery_Recharge"; distance = 4; condition = QUOTE([ARR_2(_player, _target)] call FUNC(canRefuelUAV)); statement = QUOTE([ARR_2(_player, _target)] call FUNC(refuelUAV)); - showDisabled = 0; \ - priority = 1.245; \ + showDisabled = 0; + priority = 1.245; icon = QUOTE(PATHTOF(ui\UAV_battery_ca.paa)); }; };