Unify interface as display

This commit is contained in:
SilentSpike 2015-07-15 11:38:33 +01:00
parent a1ec2eb7c3
commit a02470c341
7 changed files with 217 additions and 350 deletions

View File

@ -7,4 +7,4 @@ Spectator. Includes features from Splendid Cam, and much more.
The people responsible for merging changes to this component or answering potential questions. The people responsible for merging changes to this component or answering potential questions.
- [voiper](https://github.com/voiperr) - [SilentSpike](https://github.com/SilentSpike)

View File

@ -1,343 +0,0 @@
#include "\z\ace\addons\common\define.hpp"
class GVAR(overlay) {
idd = 12200;
enableSimulation = 1;
movingEnable = 1;
enableDisplay = 1;
onLoad = "uiNamespace setVariable ['ace_spectator_overlay', _this select 0]; ['Init', _this] call ace_spectator_fnc_overlay";
class controls {
class Unitlist {
access = 0;
idc = 0;
type = CT_TREE;
style = ST_LEFT;
default = 0;
blinkingPeriod = 0;
x = safeZoneX;
y = safezoneY + TOOL_H;
w = TOOL_W * 2;
h = safeZoneH - TOOL_H;
colorBorder[] = {1,1,1,1};
colorBackground[] = {0.1,0.1,0.1,1};
colorSelect[] = {1,0.5,0,1};
colorMarked[] = {1,0.5,0,0.5};
colorMarkedSelected[] = {1,0.5,0,1};
sizeEx = H_PART(1);
font = "PuristaMedium";
shadow = 1;
colorText[] = {1,1,1,1};
colorSelectText[] = {1,1,1,1};
colorMarkedText[] = {1,1,1,1};
tooltip = "";
tooltipColorShade[] = {0,0,0,1};
tooltipColorText[] = {1,1,1,1};
tooltipColorBox[] = {1,1,1,1};
multiselectEnabled = 0;
expandOnDoubleclick = 0;
hiddenTexture = "A3\ui_f\data\gui\rsccommon\rsctree\hiddenTexture_ca.paa";
expandedTexture = "A3\ui_f\data\gui\rsccommon\rsctree\expandedTexture_ca.paa";
maxHistoryDelay = 1;
class ScrollBar {
width = 0;
height = 0;
scrollSpeed = 0.01;
arrowEmpty = "\A3\ui_f\data\gui\cfg\scrollbar\arrowEmpty_ca.paa";
arrowFull = "\A3\ui_f\data\gui\cfg\scrollbar\arrowFull_ca.paa";
border = "\A3\ui_f\data\gui\cfg\scrollbar\border_ca.paa";
thumb = "\A3\ui_f\data\gui\cfg\scrollbar\thumb_ca.paa";
color[] = {1,1,1,1};
};
colorDisabled[] = {0,0,0,0};
colorArrow[] = {0,0,0,0};
onDestroy = QUOTE(GVAR(mouseBusy) = false; false);
onMouseEnter = QUOTE(GVAR(mouseBusy) = true; false);
onMouseExit = QUOTE(GVAR(mouseBusy) = false; false);
onTreeDblClick = "['Select', _this] call ace_spectator_fnc_overlay; false";
};
};
};
class GVAR(map) {
idd = 12202;
enableSimulation = 1;
enableDisplay = 0;
onLoad = "uiNameSpace setVariable ['ace_spectator_map', _this select 0]; ['Init', _this select 0] call ace_spectator_fnc_map";
onUnload = "['Close', _this select 0] call ace_spectator_fnc_map";
onKeyDown = "['KeyDown', _this] call ace_spectator_fnc_map";
class controls {
class Map: ACE_gui_mapBase {
access = 0;
idc = 1;
};
};
};
class RscTitles {
class GVAR(crosshair) {
onLoad = "uiNamespace setVariable ['ace_spectator_crosshair', _this select 0]";
idd=-1;
movingEnable=0;
fadein=0;
fadeout=0;
duration=1e+011;
class controls {
class X: ACE_gui_backgroundBase {
idc = 0;
x = 0.5 - W_PART(2);
y = 0.5 - H_PART(2);
w = W_PART(4);
h = H_PART(4);
text = "\a3\ui_f\data\IGUI\Cfg\Cursors\select_target_ca.paa";
colorText[] = {1,1,1,0.8};
fixedWidth = 0;
shadow = 0;
};
};
};
class GVAR(status) {
onLoad = "uiNamespace setVariable ['ace_spectator_status', _this select 0]; [_this select 0] call ace_spectator_fnc_status";
idd = -1;
movingEnable=0;
fadein=0;
fadeout=0;
duration=1e+011;
class controls {
class Name: ACE_gui_staticBase {
idc = 1;
x = safeZoneX;
y = safeZoneY;
w = TOOL_W * 2;
h = TOOL_H;
style = ST_CENTER;
shadow = 2;
colorText[]={1,1,1,1};
colorBackground[] = {0.1,0.1,0.1,1};
sizeEx = TOOL_H;
};
class NameFrame: Name {
style = ST_FRAME;
};
class Mode: Name {
idc = 2;
x = safeZoneX + TOOL_W * 2;
w = TOOL_W;
};
class ModeFrame: Mode {
style = ST_FRAME;
};
class Time: Mode {
idc = 3;
x = safeZoneX + TOOL_W * 3;
};
class TimeFrame: Time {
style = ST_FRAME;
};
class Focus: Mode {
idc = 6;
x = safeZoneX + safeZoneW - TOOL_W * 3;
};
class FocusFrame: Focus {
style = ST_FRAME;
};
class TimeAcc: Mode {
idc = 5;
x = safeZoneX + safeZoneW - TOOL_W * 4;
};
class TimeAccFrame: TimeAcc {
style = ST_FRAME;
};
class Fov: Mode {
idc = 4;
x = safezoneX + safezoneW - TOOL_W * 2;
};
class FovFrame: Fov {
style = ST_FRAME;
};
class Velocity: Mode {
idc = 0;
x = safeZoneX + safeZoneW - TOOL_W;
};
class VelocityFrame: Velocity {
style = ST_FRAME;
};
};
};
class GVAR(compass) {
onLoad = "uiNamespace setVariable ['ace_spectator_compass', _this select 0]";
onUnload = "";
idd=-1;
movingEnable=0;
fadein=0;
fadeout=0;
duration=1e+011;
class controls {
class BG: ACE_gui_staticBase {
style = ST_CENTER;
x = COMPASS_X;
y = safeZoneY;
w = COMPASS_W;
h = TOOL_H;
colorBackground[] = {0.1,0.1,0.1,1};
};
class 0_90: ACE_gui_backgroundBase {
idc = 90;
x = 0.5;
y = safeZoneY;
w = COMPASS_W * 0.5;
h = TOOL_H;
text = "A3\ui_f_curator\data\cfgIngameUI\compass\texture180_ca.paa";
};
class 90_180: 0_90 {
idc = 91;
x = 0.5 + COMPASS_W * 0.5;
text = "A3\ui_f_curator\data\cfgIngameUI\compass\texture270_ca.paa";
};
class 180_270: 0_90 {
idc = 92;
x = 0.5 + COMPASS_W;
text = "A3\ui_f_curator\data\cfgIngameUI\compass\texture0_ca.paa";
};
class 270_0: 0_90 {
idc = 93;
x = 0.5 + COMPASS_W * 1.5;
text = "A3\ui_f_curator\data\cfgIngameUI\compass\texture90_ca.paa";
};
class Post: BG {
x = 0.5 - COMPASS_W / 360;
w = COMPASS_W / 180;
colorBackground[]={1,0,0,1};
};
class LeftBlocker: Post {
x = safeZoneXAbs;
w = COMPASS_X - safeZoneXAbs;
colorBackground[] = {0.1,0.1,0.1,1};
};
class RightBlocker: LeftBlocker {
x = 0.5 + COMPASS_W * 0.5;
w = safeZoneWAbs - COMPASS_W * 0.5;
};
class Frame: BG {
style = ST_FRAME;
shadow=2;
colorText[]={1,1,1,1};
};
};
};
class GVAR(help) {
onLoad = "uiNamespace setVariable ['ace_spectator_help', _this select 0]; ['Help', _this select 0] call ace_spectator_fnc_camera";
idd = -1;
movingEnable=0;
fadein=0;
fadeout=0;
duration=1e+011;
class controls {
class BG: ACE_gui_staticBase {
style = ST_CENTER;
idc = -1;
x = 0.5 - W_PART(8);
y = 0.5 - H_PART(8);
w = W_PART(16);
h = H_PART(16);
colorBackground[] = {0.1,0.1,0.1,1};
};
class Title: BG {
idc = 0;
h = H_PART(1);
colorText[]={1,1,1,1};
colorBackground[] = {
"(profilenamespace getvariable ['GUI_BCG_RGB_R',0.3843])",
"(profilenamespace getvariable ['GUI_BCG_RGB_G',0.7019])",
"(profilenamespace getvariable ['GUI_BCG_RGB_B',0.8862])",
1
};
sizeEx = H_PART(1);
text = "ACE Spectator Controls";
};
class LeftColumn1 {
idc = 1;
type = CT_STRUCTURED_TEXT;
style = ST_LEFT;
x = 0.5 - W_PART(8);
y = 0.5 - H_PART(7);
w = W_PART(4);
h = H_PART(7);
text = "";
size = QUOTE(RESUNITS_Y * 2.5);
colorBackground[] = {0,0,0,0};
};
class LeftColumn2: LeftColumn1 {
idc = 2;
x = 0.5 - H_PART(4);
};
class RightColumn1: LeftColumn1 {
idc = 3;
x = 0.5;
};
class RightColumn2: LeftColumn1 {
idc = 4;
x = 0.5 + H_PART(4);
};
};
};
};

View File

@ -0,0 +1,198 @@
class RscActivePicture;
class RscControlsGroup;
class RscMapControl;
class RscStructuredText;
class RscText;
class RscTree;
class GVAR(overlay) {
idd = 12249;
enableSimulation = 1;
movingEnable = 0;
class controls {
class crosshair: RscActivePicture {
idc = 52;
x = 0.5 - W_PART(2);
y = 0.5 - H_PART(2);
w = W_PART(4);
h = H_PART(4);
text = "\A3\ui_f\data\IGUI\Cfg\Cursors\select_target_ca.paa";
fixedWidth = 0;
shadow = 0;
};
class compassBack: RscText {
idc = -1;
x = COMPASS_X;
y = safeZoneY;
w = COMPASS_W;
h = TOOL_H;
colorBackground[] = {0.1,0.1,0.1,1};
};
class compass0_90: RscActivePicture {
idc = 90;
x = 0.5;
y = safeZoneY;
w = COMPASS_W * 0.5;
h = TOOL_H;
text = "A3\ui_f_curator\data\cfgIngameUI\compass\texture180_ca.paa";
};
class compass90_180: compass0_90 {
idc = 180;
x = 0.5 + COMPASS_W * 0.5;
text = "A3\ui_f_curator\data\cfgIngameUI\compass\texture270_ca.paa";
};
class compass180_270: compass0_90 {
idc = 270;
x = 0.5 + COMPASS_W;
text = "A3\ui_f_curator\data\cfgIngameUI\compass\texture0_ca.paa";
};
class compass270_0: compass0_90 {
idc = 360;
x = 0.5 + COMPASS_W * 1.5;
text = "A3\ui_f_curator\data\cfgIngameUI\compass\texture90_ca.paa";
};
class compassPin: compassBack {
x = 0.5 - COMPASS_W / 360;
w = COMPASS_W / 180;
colorBackground[]={1,0,0,1};
};
class compassLeftBlock: compassPin {
x = safeZoneXAbs;
w = COMPASS_X - safeZoneXAbs;
colorBackground[] = {0.1,0.1,0.1,1};
};
class compassRightBlock: compassLeftBlock {
x = 0.5 + COMPASS_W * 0.5;
w = safeZoneWAbs * 0.5 - COMPASS_W * 0.5;
};
class compassFrame: compassBack {
style = 64;
shadow=2;
colorText[]={1,1,1,1};
};
class nameTool: RscText {
idc = IDC_NAME;
x = safeZoneX;
y = safeZoneY;
w = TOOL_W * 2;
h = TOOL_H;
shadow = 2;
colorText[]={1,1,1,1};
colorBackground[] = {0.1,0.1,0.1,1};
sizeEx = TOOL_H;
};
class nameFrame: nameTool {
idc = -1;
style = 64;
};
class viewTool: nameTool {
idc = IDC_VIEW;
x = safeZoneX + TOOL_W * 2 + MARGIN;
w = TOOL_W;
};
class viewFrame: viewTool {
idc = -1;
style = 64;
};
class clockTool: viewTool {
idc = IDC_CLOCK;
x = safeZoneX + TOOL_W * 3 + MARGIN * 2;
};
class clockFrame: clockTool {
idc = -1;
style = 64;
};
class focusTool: viewTool {
idc = IDC_FOCUS;
x = safeZoneX + safeZoneW - TOOL_W * 3 - MARGIN * 2;
};
class focusFrame: focusTool {
idc = -1;
style = 64;
};
class fovTool: viewTool {
idc = IDC_FOV;
x = safezoneX + safezoneW - TOOL_W * 2 - MARGIN;
};
class fovFrame: fovTool {
idc = -1;
style = 64;
};
class speedTool: viewTool {
idc = IDC_SPEED;
x = safeZoneX + safeZoneW - TOOL_W;
};
class speedFrame: speedTool {
idc = -1;
style = 64;
};
class unitTree: RscTree {
idc = IDC_TREE;
x = safeZoneX;
y = safezoneY + TOOL_H;
w = TOOL_W * 2;
h = safeZoneH - TOOL_H;
borderSize = 1;
colorBorder[] = {1,1,1,1};
colorBackground[] = {0.1,0.1,0.1,0.8};
colorSelect[] = {
"(profilenamespace getvariable ['GUI_BCG_RGB_R',0.3843])",
"(profilenamespace getvariable ['GUI_BCG_RGB_G',0.7019])",
"(profilenamespace getvariable ['GUI_BCG_RGB_B',0.8862])",
1
};
multiselectEnabled = 0;
maxHistoryDelay = 1;
};
class spectatorMap: RscMapControl {
idc = IDC_MAP;
x = safeZoneX;
y = safeZoneY + TOOL_H;
w = safeZoneW;
h = safeZoneH;
};
class helpBackground: RscText {
idc = 5000;
x = 0.5 - W_PART(12);
y = 0.5 - H_PART(12);
w = W_PART(24);
h = H_PART(24);
colorBackground[] = {0.1,0.1,0.1,1};
};
class helpTitle: helpBackground {
idc = 5001;
h = H_PART(1);
colorText[]={1,1,1,1};
colorBackground[] = {
"(profilenamespace getvariable ['GUI_BCG_RGB_R',0.3843])",
"(profilenamespace getvariable ['GUI_BCG_RGB_G',0.7019])",
"(profilenamespace getvariable ['GUI_BCG_RGB_B',0.8862])",
1
};
sizeEx = H_PART(1);
text = CSTRING(HelpTitle);
};
class helpColumnLeft: RscStructuredText {
idc = 5002;
x = 0.5 - W_PART(12);
y = 0.5 - H_PART(11);
w = W_PART(6);
h = H_PART(23);
text = "";
size = H_PART(1);
colorBackground[] = {0,0,0,0};
};
class helpColumnCentreL: helpColumnLeft {
idc = 5003;
x = 0.5 - W_PART(6);
};
class helpColumnCentreR: helpColumnLeft {
idc = 5004;
x = 0.5;
};
class helpColumnRight: helpColumnLeft {
idc = 5005;
x = 0.5 + W_PART(6);
};
};
};

View File

@ -15,4 +15,4 @@ class CfgPatches {
#include "ACE_Settings.hpp" #include "ACE_Settings.hpp"
#include "CfgEventHandlers.hpp" #include "CfgEventHandlers.hpp"
#include "CfgVehicles.hpp" #include "CfgVehicles.hpp"
#include "UI\RscTitles.hpp" #include "ui\interface.hpp"

View File

@ -26,9 +26,9 @@
PARAMS_1(_dialog); PARAMS_1(_dialog);
_Q1 = _dialog displayCtrl 90; _Q1 = _dialog displayCtrl 90;
_Q2 = _dialog displayCtrl 91; _Q2 = _dialog displayCtrl 180;
_Q3 = _dialog displayCtrl 92; _Q3 = _dialog displayCtrl 270;
_Q4 = _dialog displayCtrl 93; _Q4 = _dialog displayCtrl 360;
_qOrder = []; _qOrder = [];
_dir = if GVAR(cameraOn) then {getDir GVAR(cam)} else {getDir GVAR(unit)}; _dir = if GVAR(cameraOn) then {getDir GVAR(cam)} else {getDir GVAR(unit)};

View File

@ -22,7 +22,18 @@
// Interface tools // Interface tools
#define TOOL_H H_PART(1) #define TOOL_H H_PART(1)
#define TOOL_W W_PART(5) #define TOOL_W W_PART(5)
#define MARGIN TOOL_W * 0.05
// Interface compass // Interface compass
#define COMPASS_W (TOOL_W * 4) #define COMPASS_W (TOOL_W * 4)
#define COMPASS_X (0.5 - (COMPASS_W * 0.5)) #define COMPASS_X (0.5 - (COMPASS_W * 0.5))
// IDCs
#define IDC_CLOCK 3002
#define IDC_FOCUS 3003
#define IDC_FOV 3004
#define IDC_NAME 3000
#define IDC_MAP 60187
#define IDC_TREE 60791
#define IDC_SPEED 3005
#define IDC_VIEW 3001

View File

@ -66,8 +66,9 @@
<Polish>Zakończ misję kiedy wszyscy gracze będą martwi (domyślne zachowanie BIS)?</Polish> <Polish>Zakończ misję kiedy wszyscy gracze będą martwi (domyślne zachowanie BIS)?</Polish>
<Czech>Ukončit misi když umřou všichni hráči (výchozí BIS chování)?</Czech> <Czech>Ukončit misi když umřou všichni hráči (výchozí BIS chování)?</Czech>
</Key> </Key>
<Key ID="STR_ACE_Spectator_Exit">
<English>Are you sure you want to exit camera mode?</English> <Key ID="STR_ACE_Spectator_HelpTitle">
<English>Spectator Controls</English>
</Key> </Key>
<!-- Keybinds --> <!-- Keybinds -->