Zeus - Improve Editable Objects module and Cleanup (#6294)

* Improve Update Editable Objects ui and add icon

* Cleanup and remove broken attribute position

* Use QQGVAR
This commit is contained in:
mharis001
2018-04-24 13:46:59 -04:00
committed by SilentSpike
parent e7710d719b
commit 87c3a7a334
13 changed files with 143 additions and 268 deletions

View File

@ -159,6 +159,7 @@ class CfgVehicles {
category = QGVAR(Utility); category = QGVAR(Utility);
displayName = CSTRING(ModuleEditableObjects_DisplayName); displayName = CSTRING(ModuleEditableObjects_DisplayName);
curatorInfoType = QGVAR(RscEditableObjects); curatorInfoType = QGVAR(RscEditableObjects);
icon = QPATHTOF(ui\Icon_Module_Zeus_Editable_Objects_ca.paa);
}; };
class GVAR(moduleGlobalSetSkill): GVAR(moduleBase) { class GVAR(moduleGlobalSetSkill): GVAR(moduleBase) {
category = QGVAR(AI); category = QGVAR(AI);

View File

@ -41,7 +41,6 @@ PREP(moduleUnGarrison);
PREP(moduleZeusSettings); PREP(moduleZeusSettings);
PREP(showMessage); PREP(showMessage);
PREP(ui_attributeCargo); PREP(ui_attributeCargo);
//PREP(ui_attributePosition);
PREP(ui_attributeRadius); PREP(ui_attributeRadius);
PREP(ui_defendArea); PREP(ui_defendArea);
PREP(ui_garrison); PREP(ui_garrison);

View File

@ -20,6 +20,7 @@ QGVAR(GlobalSkillAI) addPublicVariableEventHandler FUNC(moduleGlobalSetSkill);
// Editable object commands must be ran on server, this events are used in the respective module // Editable object commands must be ran on server, this events are used in the respective module
if (isServer) then { if (isServer) then {
[QGVAR(equipFries), EFUNC(fastroping,equipFRIES)] call CBA_fnc_addEventHandler; [QGVAR(equipFries), EFUNC(fastroping,equipFRIES)] call CBA_fnc_addEventHandler;
[QGVAR(addObjects), { [QGVAR(addObjects), {
params ["_objects", ["_curator", objNull]]; params ["_objects", ["_curator", objNull]];
@ -29,7 +30,6 @@ if (isServer) then {
_x addCuratorEditableObjects [_objects, true]; _x addCuratorEditableObjects [_objects, true];
} forEach allCurators; } forEach allCurators;
}] call CBA_fnc_addEventHandler; }] call CBA_fnc_addEventHandler;
[QGVAR(removeObjects), { [QGVAR(removeObjects), {
params ["_objects", ["_curator", objNull]]; params ["_objects", ["_curator", objNull]];

View File

@ -1,60 +0,0 @@
/*
* Author: SilentSpike
* Initalises the `position` zeus module attribute
*
* Arguments:
* 0: position controls group <CONTROL>
*
* Return Value:
* None
*
* Example:
* [CONTROL] call ace_zeus_fnc_ui_attributePosition
*
* Public: No
*/
#include "script_component.hpp"
//Generic Init:
params ["_control"];
private _display = ctrlParent _control;
private _logic = GETMVAR(BIS_fnc_initCuratorAttributes_target,objNull);
_control ctrlRemoveAllEventHandlers "setFocus";
//Specific on-load stuff:
private _map = _control controlsGroupCtrl 26469;
// Centre map on the logic initially
_map ctrlMapAnimAdd [0, ctrlMapScale _map, _logic];
ctrlMapAnimCommit _map;
private _fnc_onDraw = {
params ["_map"];
private _display = ctrlParent _map;
private _pos = GETVAR(_display,GVAR(position),[]);
private _radius = GETVAR(_display,GVAR(radius),0);
if !(_pos isEqualTo []) then {
// Works alongside radius attribute
if (_radius == 0) then {
_map drawIcon ["\A3\ui_f\data\map\markers\military\dot_CA.paa", [0,0,0,1], _pos, 19, 19, 0, "", 0, 0];
} else {
_map drawEllipse [_pos, _radius, _radius, 0, [0,0,0,1], ""];
};
};
};
private _fnc_onMapClick = {
params ["_map","_button"];
if (_button == 0) then {
private _display = ctrlParent _map;
SETVAR(_display,GVAR(position),_pos);
};
};
SETVAR(_display,GVAR(position),getPos _logic);
_map ctrlAddEventHandler ["draw",_fnc_onDraw];
_map ctrlAddEventHandler ["mouseButtonDown",_fnc_onMapClick];

View File

@ -1,6 +1,6 @@
/* /*
* Author: SilentSpike * Author: SilentSpike
* Initalises the `radius` zeus module attribute * Initializes the "Radius" Zeus module attribute.
* *
* Arguments: * Arguments:
* 0: radius controls group <CONTROL> * 0: radius controls group <CONTROL>
@ -15,13 +15,13 @@
*/ */
#include "script_component.hpp" #include "script_component.hpp"
//Generic Init: // Generic init
params ["_control"]; params ["_control"];
private _display = ctrlParent _control; private _display = ctrlParent _control;
_control ctrlRemoveAllEventHandlers "setFocus"; _control ctrlRemoveAllEventHandlers "SetFocus";
//Specific on-load stuff: // Specific onLoad stuff
private _edit = _control controlsGroupCtrl 26467; private _edit = _control controlsGroupCtrl 26467;
_edit ctrlSetText "100"; _edit ctrlSetText "100";
@ -44,4 +44,4 @@ private _fnc_onKeyUp = {
}; };
[_display] call _fnc_onKeyUp; [_display] call _fnc_onKeyUp;
_display displayAddEventHandler ["keyUp", _fnc_onKeyUp]; _display displayAddEventHandler ["KeyUp", _fnc_onKeyUp];

View File

@ -1,6 +1,6 @@
/* /*
* Author: SilentSpike * Author: SilentSpike
* Initalises the `defend area` zeus module display * Initializes the "Defend Area" Zeus module display.
* *
* Arguments: * Arguments:
* 0: dummy controls group <CONTROL> * 0: dummy controls group <CONTROL>
@ -15,14 +15,14 @@
*/ */
#include "script_component.hpp" #include "script_component.hpp"
//Generic Init: // Generic init
params ["_control"]; params ["_control"];
private _display = ctrlParent _control; private _display = ctrlParent _control;
private _logic = GETMVAR(BIS_fnc_initCuratorAttributes_target,objNull); private _logic = GETMVAR(BIS_fnc_initCuratorAttributes_target,objNull);
_control ctrlRemoveAllEventHandlers "setFocus"; _control ctrlRemoveAllEventHandlers "SetFocus";
//Validate the module target: // Validate module target
private _unit = effectiveCommander (attachedTo _logic); private _unit = effectiveCommander (attachedTo _logic);
scopeName "Main"; scopeName "Main";
@ -47,30 +47,28 @@ switch (false) do {
}; };
private _fnc_onUnload = { private _fnc_onUnload = {
private _logic = GETMVAR(BIS_fnc_initCuratorAttributes_target,objnull); private _logic = GETMVAR(BIS_fnc_initCuratorAttributes_target,objNull);
if (isNull _logic) exitWith {}; if (isNull _logic) exitWith {};
if (_this select 1 == 2) then { deleteVehicle _logic;
deleteVehicle _logic;
};
}; };
private _fnc_onConfirm = { private _fnc_onConfirm = {
params [["_ctrlButtonOK", controlNull, [controlNull]]]; params [["_ctrlButtonOK", controlNull, [controlNull]]];
private _display = ctrlparent _ctrlButtonOK; private _display = ctrlParent _ctrlButtonOK;
if (isNull _display) exitWith {}; if (isNull _display) exitWith {};
private _logic = GETMVAR(BIS_fnc_initCuratorAttributes_target,objnull); private _logic = GETMVAR(BIS_fnc_initCuratorAttributes_target,objNull);
if (isNull _logic) exitWith {}; if (isNull _logic) exitWith {};
private _unit = effectiveCommander (attachedTo _logic); private _unit = effectiveCommander (attachedTo _logic);
private _radius = GETVAR(_display,GVAR(radius),50); private _radius = GETVAR(_display,GVAR(radius),100);
private _position = GETVAR(_display,GVAR(position),getPos _logic); private _position = getPos _logic;
[QGVAR(moduleDefendArea), [_unit,_position,_radius], _unit] call CBA_fnc_targetEvent; [QGVAR(moduleDefendArea), [_unit, _position, _radius], _unit] call CBA_fnc_targetEvent;
deleteVehicle _logic; deleteVehicle _logic;
}; };
_display displayAddEventHandler ["unload", _fnc_onUnload]; _display displayAddEventHandler ["Unload", _fnc_onUnload];
_control ctrlAddEventHandler ["buttonClick", _fnc_onConfirm]; _control ctrlAddEventHandler ["ButtonClick", _fnc_onConfirm];

View File

@ -1,6 +1,6 @@
/* /*
* Author: Fisher, SilentSpike * Author: Fisher, SilentSpike, mharis001
* Updated all/local curator with objects in the module radius. * Initializes the "Editable Objects" Zeus module display.
* *
* Arguments: * Arguments:
* 0: editableObjects controls group <CONTROL> * 0: editableObjects controls group <CONTROL>
@ -17,24 +17,23 @@
params ["_control"]; params ["_control"];
//Generic Init: // Generic Init
private _display = ctrlParent _control; private _display = ctrlParent _control;
private _ctrlButtonOK = _display displayCtrl 1; //IDC_OK private _ctrlButtonOK = _display displayCtrl 1; //IDC_OK
private _logic = GETMVAR(BIS_fnc_initCuratorAttributes_target,objNull); private _logic = GETMVAR(BIS_fnc_initCuratorAttributes_target,objNull);
TRACE_1("logicObject",_logic); TRACE_1("Logic Object",_logic);
_control ctrlRemoveAllEventHandlers "setFocus"; _control ctrlRemoveAllEventHandlers "SetFocus";
//Specific on-load stuff: // Specific onLoad stuff
(_display displayCtrl 16188) cbSetChecked true; (_display displayCtrl 19181) lbSetCurSel 1;
(_display displayCtrl 19182) lbSetCurSel 1;
private _fnc_onUnload = { private _fnc_onUnload = {
private _logic = GETMVAR(BIS_fnc_initCuratorAttributes_target,objNull); private _logic = GETMVAR(BIS_fnc_initCuratorAttributes_target,objNull);
if (isNull _logic) exitWith {}; if (isNull _logic) exitWith {};
if (_this select 1 == 2) then { deleteVehicle _logic;
deleteVehicle _logic;
};
}; };
private _fnc_onConfirm = { private _fnc_onConfirm = {
@ -46,22 +45,19 @@ private _fnc_onConfirm = {
private _logic = GETMVAR(BIS_fnc_initCuratorAttributes_target,objNull); private _logic = GETMVAR(BIS_fnc_initCuratorAttributes_target,objNull);
if (isNull _logic) exitWith {}; if (isNull _logic) exitWith {};
private _radius = GETVAR(_display,GVAR(radius),50); private _radius = GETVAR(_display,GVAR(radius),100);
private _position = GETVAR(_display,GVAR(position),getPos _logic); private _editingMode = lbCurSel (_display displayCtrl 19181) > 0;
private _allCurators = cbChecked (_display displayCtrl 16188); private _allCurators = [getAssignedCuratorLogic player, objNull] select (lbCurSel (_display displayCtrl 19182));
private _removeObjects = cbChecked (_display displayCtrl 16189); private _objects = nearestObjects [getPos _logic, ["All"], _radius];
private _objects = nearestObjects [_position, ["All"], _radius]; if (_editingMode) then {
private _localCurator = [getAssignedCuratorLogic player, objNull] select _allCurators; [QGVAR(addObjects), [_objects, _allCurators]] call CBA_fnc_serverEvent;
if (_removeObjects) then {
[QGVAR(removeObjects), [_objects, _localCurator]] call CBA_fnc_serverEvent;
} else { } else {
[QGVAR(addObjects), [_objects, _localCurator]] call CBA_fnc_serverEvent; [QGVAR(removeObjects), [_objects, _allCurators]] call CBA_fnc_serverEvent;
}; };
deleteVehicle _logic; deleteVehicle _logic;
}; };
_display displayAddEventHandler ["unload", _fnc_onUnload]; _display displayAddEventHandler ["Unload", _fnc_onUnload];
_ctrlButtonOK ctrlAddEventHandler ["buttonClick", _fnc_onConfirm]; _ctrlButtonOK ctrlAddEventHandler ["ButtonClick", _fnc_onConfirm];

View File

@ -1,6 +1,6 @@
/* /*
* Author: SilentSpike * Author: SilentSpike
* Initalises the `patrol area` zeus module display * Initializes the "Patrol Area" Zeus module display.
* *
* Arguments: * Arguments:
* 0: dummy controls group <CONTROL> * 0: dummy controls group <CONTROL>
@ -15,14 +15,14 @@
*/ */
#include "script_component.hpp" #include "script_component.hpp"
//Generic Init: // Generic init
params ["_control"]; params ["_control"];
private _display = ctrlParent _control; private _display = ctrlParent _control;
private _logic = GETMVAR(BIS_fnc_initCuratorAttributes_target,objNull); private _logic = GETMVAR(BIS_fnc_initCuratorAttributes_target,objNull);
_control ctrlRemoveAllEventHandlers "setFocus"; _control ctrlRemoveAllEventHandlers "SetFocus";
//Validate the module target: // Validate module target
private _unit = effectiveCommander (attachedTo _logic); private _unit = effectiveCommander (attachedTo _logic);
scopeName "Main"; scopeName "Main";
@ -47,30 +47,28 @@ switch (false) do {
}; };
private _fnc_onUnload = { private _fnc_onUnload = {
private _logic = GETMVAR(BIS_fnc_initCuratorAttributes_target,objnull); private _logic = GETMVAR(BIS_fnc_initCuratorAttributes_target,objNull);
if (isNull _logic) exitWith {}; if (isNull _logic) exitWith {};
if (_this select 1 == 2) then { deleteVehicle _logic;
deleteVehicle _logic;
};
}; };
private _fnc_onConfirm = { private _fnc_onConfirm = {
params [["_ctrlButtonOK", controlNull, [controlNull]]]; params [["_ctrlButtonOK", controlNull, [controlNull]]];
private _display = ctrlparent _ctrlButtonOK; private _display = ctrlParent _ctrlButtonOK;
if (isNull _display) exitWith {}; if (isNull _display) exitWith {};
private _logic = GETMVAR(BIS_fnc_initCuratorAttributes_target,objnull); private _logic = GETMVAR(BIS_fnc_initCuratorAttributes_target,objNull);
if (isNull _logic) exitWith {}; if (isNull _logic) exitWith {};
private _unit = effectiveCommander (attachedTo _logic); private _unit = effectiveCommander (attachedTo _logic);
private _radius = GETVAR(_display,GVAR(radius),50); private _radius = GETVAR(_display,GVAR(radius),100);
private _position = GETVAR(_display,GVAR(position),getPos _logic); private _position = getPos _logic;
[QGVAR(modulePatrolArea), [_unit,_position,_radius,5], _unit] call CBA_fnc_targetEvent; [QGVAR(modulePatrolArea), [_unit, _position, _radius, 5], _unit] call CBA_fnc_targetEvent;
deleteVehicle _logic; deleteVehicle _logic;
}; };
_display displayAddEventHandler ["unload", _fnc_onUnload]; _display displayAddEventHandler ["Unload", _fnc_onUnload];
_control ctrlAddEventHandler ["buttonClick", _fnc_onConfirm]; _control ctrlAddEventHandler ["ButtonClick", _fnc_onConfirm];

View File

@ -1,6 +1,6 @@
/* /*
* Author: SilentSpike * Author: SilentSpike
* Initalises the `search area` zeus module display * Initializes the "Search Area" Zeus module display.
* *
* Arguments: * Arguments:
* 0: dummy controls group <CONTROL> * 0: dummy controls group <CONTROL>
@ -15,14 +15,14 @@
*/ */
#include "script_component.hpp" #include "script_component.hpp"
//Generic Init: // Generic init
params ["_control"]; params ["_control"];
private _display = ctrlParent _control; private _display = ctrlParent _control;
private _logic = GETMVAR(BIS_fnc_initCuratorAttributes_target,objNull); private _logic = GETMVAR(BIS_fnc_initCuratorAttributes_target,objNull);
_control ctrlRemoveAllEventHandlers "setFocus"; _control ctrlRemoveAllEventHandlers "SetFocus";
//Validate the module target: // Validate module target
private _unit = effectiveCommander (attachedTo _logic); private _unit = effectiveCommander (attachedTo _logic);
scopeName "Main"; scopeName "Main";
@ -47,36 +47,34 @@ switch (false) do {
}; };
private _fnc_onUnload = { private _fnc_onUnload = {
private _logic = GETMVAR(BIS_fnc_initCuratorAttributes_target,objnull); private _logic = GETMVAR(BIS_fnc_initCuratorAttributes_target,objNull);
if (isNull _logic) exitWith {}; if (isNull _logic) exitWith {};
if (_this select 1 == 2) then { deleteVehicle _logic;
deleteVehicle _logic;
};
}; };
private _fnc_onConfirm = { private _fnc_onConfirm = {
params [["_ctrlButtonOK", controlNull, [controlNull]]]; params [["_ctrlButtonOK", controlNull, [controlNull]]];
private _display = ctrlparent _ctrlButtonOK; private _display = ctrlParent _ctrlButtonOK;
if (isNull _display) exitWith {}; if (isNull _display) exitWith {};
private _logic = GETMVAR(BIS_fnc_initCuratorAttributes_target,objnull); private _logic = GETMVAR(BIS_fnc_initCuratorAttributes_target,objNull);
if (isNull _logic) exitWith {}; if (isNull _logic) exitWith {};
private _unit = effectiveCommander (attachedTo _logic); private _unit = effectiveCommander (attachedTo _logic);
private _radius = GETVAR(_display,GVAR(radius),50); private _radius = GETVAR(_display,GVAR(radius),100);
private _position = GETVAR(_display,GVAR(position),getPos _logic); private _position = getPos _logic;
private _marker = QGVAR(ModuleSearchArea) + str(_unit); private _marker = QGVAR(ModuleSearchArea) + str _unit;
createMarker [_marker, _position]; createMarker [_marker, _position];
_marker setMarkerAlpha 0; _marker setMarkerAlpha 0;
_marker setMarkerShape "ELLIPSE"; _marker setMarkerShape "ELLIPSE";
_marker setMarkerSize [_radius,_radius]; _marker setMarkerSize [_radius, _radius];
[QGVAR(moduleSearchArea), [_unit,_marker], _unit] call CBA_fnc_targetEvent; [QGVAR(moduleSearchArea), [_unit, _marker], _unit] call CBA_fnc_targetEvent;
deleteVehicle _logic; deleteVehicle _logic;
}; };
_display displayAddEventHandler ["unload", _fnc_onUnload]; _display displayAddEventHandler ["Unload", _fnc_onUnload];
_control ctrlAddEventHandler ["buttonClick", _fnc_onConfirm]; _control ctrlAddEventHandler ["ButtonClick", _fnc_onConfirm];

View File

@ -1,6 +1,6 @@
/* /*
* Author: mharis001 * Author: mharis001
* Initalizes the "Suicide Bomber" Zeus module display. * Initializes the "Suicide Bomber" Zeus module display.
* *
* Arguments: * Arguments:
* 0: suicideBomber controls group <CONTROL> * 0: suicideBomber controls group <CONTROL>

View File

@ -273,29 +273,16 @@
<Chinesesimp>更新可编辑的物件</Chinesesimp> <Chinesesimp>更新可编辑的物件</Chinesesimp>
<Chinese>更新可編輯的物件</Chinese> <Chinese>更新可編輯的物件</Chinese>
</Key> </Key>
<Key ID="STR_ACE_Zeus_ModuleEditableObjects_curators"> <Key ID="STR_ACE_Zeus_ModuleEditableObjects_EditingMode">
<English>All Curators</English> <English>Editing Mode</English>
<German>Alle Zeus'</German>
<Japanese>全キュレーター</Japanese>
<Korean>모든 큐레이터</Korean>
<Polish>Wszyscy kuratorzy</Polish>
<French>Tous curateurs</French>
<Italian>Tutti i Moderatori</Italian>
<Chinesesimp>所有编辑者</Chinesesimp>
<Chinese>所有編輯者</Chinese>
</Key> </Key>
<Key ID="STR_ACE_Zeus_ModuleEditableObjects_curators_desc"> <Key ID="STR_ACE_Zeus_ModuleEditableObjects_EditingMode_Tooltip">
<English>Apply changes to all curators</English> <English>Add or remove editable objects from Zeus</English>
<German>Änderungen bei allen Zeus' aktualisieren</German>
<Japanese>全キュレーターへ変更を適用</Japanese>
<Korean>모든 큐레이터에 변화를 적용합니다</Korean>
<Polish>Zatwierdź zmiany dla wszystkich kuratorów</Polish>
<French>Applique les changements à tous les curateurs</French>
<Italian>Applica i cambiamenti a tutti i moderatori</Italian>
<Chinesesimp>确认变更给所有编辑者</Chinesesimp>
<Chinese>確認變更給所有編輯者</Chinese>
</Key> </Key>
<Key ID="STR_ACE_Zeus_ModuleEditableObjects_removal"> <Key ID="STR_ACE_Zeus_ModuleEditableObjects_AddObjects">
<English>Add Objects</English>
</Key>
<Key ID="STR_ACE_Zeus_ModuleEditableObjects_RemoveObjects">
<English>Remove Objects</English> <English>Remove Objects</English>
<German>Entferne Objekte</German> <German>Entferne Objekte</German>
<Japanese>オブジェクトの削除</Japanese> <Japanese>オブジェクトの削除</Japanese>
@ -306,16 +293,27 @@
<Chinesesimp>移除物件</Chinesesimp> <Chinesesimp>移除物件</Chinesesimp>
<Chinese>移除物件</Chinese> <Chinese>移除物件</Chinese>
</Key> </Key>
<Key ID="STR_ACE_Zeus_ModuleEditableObjects_removal_desc"> <Key ID="STR_ACE_Zeus_ModuleEditableObjects_AllCurators">
<English>Remove existing instead of adding new</English> <English>All Curators</English>
<German>Entfernt Bestehendes, statt Neues hinzuzufügen</German> <German>Alle Zeus'</German>
<Japanese>新しく追加するために削除します</Japanese> <Japanese>全キュレーター</Japanese>
<Korean>물체를 삭제합니다</Korean> <Korean>모든 큐레이터</Korean>
<Polish>Usuń istniejące zamiast dodawać nowe</Polish> <Polish>Wszyscy kuratorzy</Polish>
<French>Enlève les objets existants au lieu d'en ajouter de nouveaux</French> <French>Tous curateurs</French>
<Italian>Rimuove gli esistenti e li sostituisce con i nuovi</Italian> <Italian>Tutti i Moderatori</Italian>
<Chinesesimp>移除已存在的物件来新增新的物件</Chinesesimp> <Chinesesimp>所有编辑者</Chinesesimp>
<Chinese>移除已存在的物件來新增新的物件</Chinese> <Chinese>所有編輯者</Chinese>
</Key>
<Key ID="STR_ACE_Zeus_ModuleEditableObjects_AllCurators_Tooltip">
<English>Apply changes to all curators</English>
<German>Änderungen bei allen Zeus' aktualisieren</German>
<Japanese>全キュレーターへ変更を適用</Japanese>
<Korean>모든 큐레이터에 변화를 적용합니다</Korean>
<Polish>Zatwierdź zmiany dla wszystkich kuratorów</Polish>
<French>Applique les changements à tous les curateurs</French>
<Italian>Applica i cambiamenti a tutti i moderatori</Italian>
<Chinesesimp>确认变更给所有编辑者</Chinesesimp>
<Chinese>確認變更給所有編輯者</Chinese>
</Key> </Key>
<Key ID="STR_ACE_Zeus_ModuleGlobalSetSkill_DisplayName"> <Key ID="STR_ACE_Zeus_ModuleGlobalSetSkill_DisplayName">
<English>Global AI Skill</English> <English>Global AI Skill</English>
@ -963,31 +961,6 @@
<Chinesesimp>货物:</Chinesesimp> <Chinesesimp>货物:</Chinesesimp>
<Chinese>貨物:</Chinese> <Chinese>貨物:</Chinese>
</Key> </Key>
<Key ID="STR_ACE_Zeus_AttributePosition">
<English>Task Position</English>
<French>Position de la tâche</French>
<Russian>Местоположение задания</Russian>
<Czech>Pozice úkolu</Czech>
<Japanese>タスク位置</Japanese>
<Polish>Pozycja zadania</Polish>
<German>Position der Aufgabe</German>
<Korean>작업 위치</Korean>
<Italian>Posizione Incarico</Italian>
<Chinesesimp>目标位置</Chinesesimp>
<Chinese>目標位置</Chinese>
</Key>
<Key ID="STR_ACE_Zeus_AttributePosition_desc">
<English>Select a position to perform the task at</English>
<French>Sélectionne une position où accomplir la tâche</French>
<Russian>Выбрать местоположение для выполнения задания</Russian>
<Japanese>次の選択位置をタスクとして実行</Japanese>
<Polish>Wybierz pozycję na której wykonać zadanie</Polish>
<German>Wähle eine Position, an der die Aufgabe ausgeführt werden soll</German>
<Korean>작업을 할 위치를 선택하십시요</Korean>
<Italian>Seleziona una posizione per eseguire l'incarico</Italian>
<Chinesesimp>选择要执行目标的位置</Chinesesimp>
<Chinese>選擇要執行目標的位置</Chinese>
</Key>
<Key ID="STR_ACE_Zeus_AttributeRadius"> <Key ID="STR_ACE_Zeus_AttributeRadius">
<English>Task Radius</English> <English>Task Radius</English>
<French>Rayon de la tâche</French> <French>Rayon de la tâche</French>
@ -1000,7 +973,7 @@
<Chinesesimp>目标半径</Chinesesimp> <Chinesesimp>目标半径</Chinesesimp>
<Chinese>目標半徑</Chinese> <Chinese>目標半徑</Chinese>
</Key> </Key>
<Key ID="STR_ACE_Zeus_AttributeRadius_desc"> <Key ID="STR_ACE_Zeus_AttributeRadius_Tooltip">
<English>Radius to perform the task within</English> <English>Radius to perform the task within</English>
<French>Rayon dans lequel la tâche prend place</French> <French>Rayon dans lequel la tâche prend place</French>
<Russian>Радиус выполнения задания</Russian> <Russian>Радиус выполнения задания</Russian>

View File

@ -29,67 +29,38 @@ class GVAR(AttributeRadius): RscControlsGroupNoScrollbars {
x = 0; x = 0;
y = 0; y = 0;
w = W_PART(26); w = W_PART(26);
h = H_PART(1.2); h = H_PART(1.1);
class controls { class controls {
class Title1: RscText { class Label: RscText {
idc = -1; idc = -1;
text = CSTRING(AttributeRadius); text = CSTRING(AttributeRadius);
toolTip = CSTRING(AttributeRadius_desc); tooltip = CSTRING(AttributeRadius_Tooltip);
x = 0; x = 0;
y = H_PART(0.1); y = H_PART(0.1);
w = W_PART(10); w = W_PART(10);
h = H_PART(1); h = H_PART(1);
colorBackground[] = {0,0,0,0.5}; colorBackground[] = {0, 0, 0, 0.5};
}; };
class Radius: RscEdit { class Radius: RscEdit {
idc = 26467; idc = 26467;
x = W_PART(10.1); x = W_PART(10.1);
y = H_PART(0.1); y = H_PART(0.1);
w = W_PART(15.8); w = W_PART(15.9);
h = H_PART(1); h = H_PART(1);
autocomplete = ""; autocomplete = "";
}; };
}; };
}; };
class GVAR(AttributePosition): RscControlsGroupNoScrollbars {
onSetFocus = QUOTE(_this call FUNC(ui_attributePosition));
idc = 26468;
x = 0;
y = 0;
w = W_PART(26);
h = H_PART(26);
class controls {
class Title1: RscText {
idc = -1;
text = CSTRING(AttributePosition);
toolTip = CSTRING(AttributePosition_desc);
x = 0;
y = 0;
w = W_PART(26);
h = H_PART(1);
colorBackground[] = {0,0,0,0.5};
};
class Position: RscMapControl {
idc = 26469;
x = W_PART(0.5);
y = H_PART(1.1);
w = W_PART(25);
h = H_PART(24.8);
};
};
};
class GVAR(RscDefendArea): RscDisplayAttributes { class GVAR(RscDefendArea): RscDisplayAttributes {
onLoad = QUOTE([ARR_3('onLoad', _this, QUOTE(QGVAR(RscDefendArea)))] call FUNC(zeusAttributes)); onLoad = QUOTE([ARR_3('onLoad', _this, QQGVAR(RscDefendArea))] call FUNC(zeusAttributes));
onUnload = QUOTE([ARR_3('onUnload', _this, QUOTE(QGVAR(RscDefendArea)))] call FUNC(zeusAttributes)); onUnload = QUOTE([ARR_3('onUnload', _this, QQGVAR(RscDefendArea))] call FUNC(zeusAttributes));
class Controls: Controls { class Controls: Controls {
class Background: Background {}; class Background: Background {};
class Title: Title {}; class Title: Title {};
class Content: Content { class Content: Content {
class Controls { class Controls {
class radius: GVAR(AttributeRadius) {}; class radius: GVAR(AttributeRadius) {};
//class position: GVAR(AttributePosition) {};
}; };
}; };
class ButtonOK: ButtonOK { class ButtonOK: ButtonOK {
@ -108,40 +79,43 @@ class GVAR(RscEditableObjects): RscDisplayAttributes {
class Content: Content { class Content: Content {
class Controls { class Controls {
class radius: GVAR(AttributeRadius) {}; class radius: GVAR(AttributeRadius) {};
//class position: GVAR(AttributePosition) {};
class editableObjects: RscControlsGroupNoScrollbars { class editableObjects: RscControlsGroupNoScrollbars {
onSetFocus = QUOTE(_this call FUNC(ui_editableObjects)); onSetFocus = QUOTE(_this call FUNC(ui_editableObjects));
idc = 26422; idc = 19180;
x = 0; x = 0;
y = 0; y = 0;
w = W_PART(11.1); w = W_PART(26);
h = H_PART(2.5); h = H_PART(2.1);
class controls { class controls {
class Label: RscText { class EditingModeLabel: RscText {
idc = -1; idc = -1;
text = CSTRING(ModuleEditableObjects_curators); text = CSTRING(ModuleEditableObjects_EditingMode);
toolTip = CSTRING(ModuleEditableObjects_curators_desc); tooltip = CSTRING(ModuleEditableObjects_EditingMode_Tooltip);
x = 0; x = 0;
y = 0; y = 0;
w = W_PART(10); w = W_PART(10);
h = H_PART(1); h = H_PART(1);
colorBackground[] = {0,0,0,0.5}; colorBackground[] = {0, 0, 0, 0.5};
}; };
class AllCurators: RscCheckBox { class EditingMode: ctrlToolbox {
idc = 16188; idc = 19181;
x = W_PART(10.1); x = W_PART(10.1);
y = 0; y = 0;
w = W_PART(1); w = W_PART(15.9);
h = H_PART(1); h = H_PART(1);
rows = 1;
columns = 2;
strings[] = {CSTRING(ModuleEditableObjects_RemoveObjects), CSTRING(ModuleEditableObjects_AddObjects)};
}; };
class Label2: Label { class AllCuratorsLabel: EditingModeLabel {
text = CSTRING(ModuleEditableObjects_removal); text = CSTRING(ModuleEditableObjects_AllCurators);
toolTip = CSTRING(ModuleEditableObjects_removal_desc); tooltip = CSTRING(ModuleEditableObjects_AllCurators_Tooltip);
y = H_PART(1.1); y = H_PART(1.1);
}; };
class EditingMode: AllCurators { class AllCurators: EditingMode {
idc = 16189; idc = 19182;
y = H_PART(1.1); y = H_PART(1.1);
strings[] = {ECSTRING(common,No), ECSTRING(common,Yes)};
}; };
}; };
}; };
@ -153,8 +127,8 @@ class GVAR(RscEditableObjects): RscDisplayAttributes {
}; };
class GVAR(RscGlobalSetSkill): RscDisplayAttributes { class GVAR(RscGlobalSetSkill): RscDisplayAttributes {
onLoad = QUOTE([ARR_3('onLoad', _this, QUOTE(QGVAR(RscGlobalSetSkill)))] call FUNC(zeusAttributes)); onLoad = QUOTE([ARR_3('onLoad', _this, QQGVAR(RscGlobalSetSkill))] call FUNC(zeusAttributes));
onUnload = QUOTE([ARR_3('onUnload', _this, QUOTE(QGVAR(RscGlobalSetSkill)))] call FUNC(zeusAttributes)); onUnload = QUOTE([ARR_3('onUnload', _this, QQGVAR(RscGlobalSetSkill))] call FUNC(zeusAttributes));
class Controls: Controls { class Controls: Controls {
class Background: Background {}; class Background: Background {};
class Title: Title {}; class Title: Title {};
@ -248,8 +222,8 @@ class GVAR(RscGlobalSetSkill): RscDisplayAttributes {
}; };
class GVAR(RscGroupSide): RscDisplayAttributes { class GVAR(RscGroupSide): RscDisplayAttributes {
onLoad = QUOTE([ARR_3('onLoad', _this, QUOTE(QGVAR(RscGroupSide)))] call FUNC(zeusAttributes)); onLoad = QUOTE([ARR_3('onLoad', _this, QQGVAR(RscGroupSide))] call FUNC(zeusAttributes));
onUnload = QUOTE([ARR_3('onUnload', _this, QUOTE(QGVAR(RscGroupSide)))] call FUNC(zeusAttributes)); onUnload = QUOTE([ARR_3('onUnload', _this, QQGVAR(RscGroupSide))] call FUNC(zeusAttributes));
class Controls: Controls { class Controls: Controls {
class Background: Background {}; class Background: Background {};
class Title: Title {}; class Title: Title {};
@ -326,15 +300,14 @@ class GVAR(RscGroupSide): RscDisplayAttributes {
}; };
class GVAR(RscPatrolArea): RscDisplayAttributes { class GVAR(RscPatrolArea): RscDisplayAttributes {
onLoad = QUOTE([ARR_3('onLoad', _this, QUOTE(QGVAR(RscPatrolArea)))] call FUNC(zeusAttributes)); onLoad = QUOTE([ARR_3('onLoad', _this, QQGVAR(RscPatrolArea))] call FUNC(zeusAttributes));
onUnload = QUOTE([ARR_3('onUnload', _this, QUOTE(QGVAR(RscPatrolArea)))] call FUNC(zeusAttributes)); onUnload = QUOTE([ARR_3('onUnload', _this, QQGVAR(RscPatrolArea))] call FUNC(zeusAttributes));
class Controls: Controls { class Controls: Controls {
class Background: Background {}; class Background: Background {};
class Title: Title {}; class Title: Title {};
class Content: Content { class Content: Content {
class Controls { class Controls {
class radius: GVAR(AttributeRadius) {}; class radius: GVAR(AttributeRadius) {};
//class position: GVAR(AttributePosition) {};
}; };
}; };
class ButtonOK: ButtonOK { class ButtonOK: ButtonOK {
@ -345,15 +318,14 @@ class GVAR(RscPatrolArea): RscDisplayAttributes {
}; };
class GVAR(RscSearchArea): RscDisplayAttributes { class GVAR(RscSearchArea): RscDisplayAttributes {
onLoad = QUOTE([ARR_3('onLoad', _this, QUOTE(QGVAR(RscSearchArea)))] call FUNC(zeusAttributes)); onLoad = QUOTE([ARR_3('onLoad', _this, QQGVAR(RscSearchArea))] call FUNC(zeusAttributes));
onUnload = QUOTE([ARR_3('onUnload', _this, QUOTE(QGVAR(RscSearchArea)))] call FUNC(zeusAttributes)); onUnload = QUOTE([ARR_3('onUnload', _this, QQGVAR(RscSearchArea))] call FUNC(zeusAttributes));
class Controls: Controls { class Controls: Controls {
class Background: Background {}; class Background: Background {};
class Title: Title {}; class Title: Title {};
class Content: Content { class Content: Content {
class Controls { class Controls {
class radius: GVAR(AttributeRadius) {}; class radius: GVAR(AttributeRadius) {};
//class position: GVAR(AttributePosition) {};
}; };
}; };
class ButtonOK: ButtonOK { class ButtonOK: ButtonOK {
@ -364,8 +336,8 @@ class GVAR(RscSearchArea): RscDisplayAttributes {
}; };
class GVAR(RscTeleportPlayers): RscDisplayAttributes { class GVAR(RscTeleportPlayers): RscDisplayAttributes {
onLoad = QUOTE([ARR_3('onLoad', _this, QUOTE(QGVAR(RscTeleportPlayers)))] call FUNC(zeusAttributes)); onLoad = QUOTE([ARR_3('onLoad', _this, QQGVAR(RscTeleportPlayers))] call FUNC(zeusAttributes));
onUnload = QUOTE([ARR_3('onUnload', _this, QUOTE(QGVAR(RscTeleportPlayers)))] call FUNC(zeusAttributes)); onUnload = QUOTE([ARR_3('onUnload', _this, QQGVAR(RscTeleportPlayers))] call FUNC(zeusAttributes));
class Controls: Controls { class Controls: Controls {
class Background: Background {}; class Background: Background {};
class Title: Title {}; class Title: Title {};
@ -501,8 +473,8 @@ class RscDisplayAttributesVehicleEmpty: RscDisplayAttributes {
}; };
class GVAR(RscGarrison): RscDisplayAttributes { class GVAR(RscGarrison): RscDisplayAttributes {
onLoad = QUOTE([ARR_3('onLoad', _this, QUOTE(QGVAR(RscGarrison)))] call FUNC(zeusAttributes)); onLoad = QUOTE([ARR_3('onLoad', _this, QQGVAR(RscGarrison))] call FUNC(zeusAttributes));
onUnload = QUOTE([ARR_3('onUnload', _this, QUOTE(QGVAR(RscGarrison)))] call FUNC(zeusAttributes)); onUnload = QUOTE([ARR_3('onUnload', _this, QQGVAR(RscGarrison))] call FUNC(zeusAttributes));
class Controls: Controls { class Controls: Controls {
class Background: Background {}; class Background: Background {};
class Title: Title {}; class Title: Title {};
@ -576,8 +548,8 @@ class GVAR(RscGarrison): RscDisplayAttributes {
}; };
class GVAR(RscToggleNvg): RscDisplayAttributes { class GVAR(RscToggleNvg): RscDisplayAttributes {
onLoad = QUOTE([ARR_3('onLoad', _this, QUOTE(QGVAR(RscToggleNvg)))] call FUNC(zeusAttributes)); onLoad = QUOTE([ARR_3('onLoad', _this, QQGVAR(RscToggleNvg))] call FUNC(zeusAttributes));
onUnload = QUOTE([ARR_3('onUnload', _this, QUOTE(QGVAR(RscToggleNvg)))] call FUNC(zeusAttributes)); onUnload = QUOTE([ARR_3('onUnload', _this, QQGVAR(RscToggleNvg))] call FUNC(zeusAttributes));
class Controls: Controls { class Controls: Controls {
class Background: Background {}; class Background: Background {};
class Title: Title {}; class Title: Title {};
@ -634,8 +606,8 @@ class GVAR(RscToggleNvg): RscDisplayAttributes {
}; };
class GVAR(RscToggleFlashlight): RscDisplayAttributes { class GVAR(RscToggleFlashlight): RscDisplayAttributes {
onLoad = QUOTE([ARR_3('onLoad', _this, QUOTE(QGVAR(RscToggleFlashlight)))] call FUNC(zeusAttributes)); onLoad = QUOTE([ARR_3('onLoad', _this, QQGVAR(RscToggleFlashlight))] call FUNC(zeusAttributes));
onUnload = QUOTE([ARR_3('onUnload', _this, QUOTE(QGVAR(RscToggleFlashlight)))] call FUNC(zeusAttributes)); onUnload = QUOTE([ARR_3('onUnload', _this, QQGVAR(RscToggleFlashlight))] call FUNC(zeusAttributes));
class Controls: Controls { class Controls: Controls {
class Background: Background {}; class Background: Background {};
class Title: Title {}; class Title: Title {};
@ -700,8 +672,8 @@ class GVAR(RscToggleFlashlight): RscDisplayAttributes {
}; };
class GVAR(RscSetEngineer): RscDisplayAttributes { class GVAR(RscSetEngineer): RscDisplayAttributes {
onLoad = QUOTE([ARR_3('onLoad', _this, QUOTE(QGVAR(RscSetEngineer)))] call FUNC(zeusAttributes)); onLoad = QUOTE([ARR_3('onLoad', _this, QQGVAR(RscSetEngineer))] call FUNC(zeusAttributes));
onUnload = QUOTE([ARR_3('onUnload', _this, QUOTE(QGVAR(RscSetEngineer)))] call FUNC(zeusAttributes)); onUnload = QUOTE([ARR_3('onUnload', _this, QQGVAR(RscSetEngineer))] call FUNC(zeusAttributes));
class Controls: Controls { class Controls: Controls {
class Background: Background {}; class Background: Background {};
class Title: Title {}; class Title: Title {};
@ -745,8 +717,8 @@ class GVAR(RscSetEngineer): RscDisplayAttributes {
}; };
class GVAR(RscSuicideBomber): RscDisplayAttributes { class GVAR(RscSuicideBomber): RscDisplayAttributes {
onLoad = QUOTE([ARR_3('onLoad', _this, QUOTE(QGVAR(RscSuicideBomber)))] call FUNC(zeusAttributes)); onLoad = QUOTE([ARR_3('onLoad', _this, QQGVAR(RscSuicideBomber))] call FUNC(zeusAttributes));
onUnload = QUOTE([ARR_3('onUnload', _this, QUOTE(QGVAR(RscSuicideBomber)))] call FUNC(zeusAttributes)); onUnload = QUOTE([ARR_3('onUnload', _this, QQGVAR(RscSuicideBomber))] call FUNC(zeusAttributes));
class Controls: Controls { class Controls: Controls {
class Background: Background {}; class Background: Background {};
class Title: Title {}; class Title: Title {};