Merged GUI into common.

Removed unnecessary GUI functions.
Updated displayIcon function to be more dynamic
Added client side settings for displaying icons.
This commit is contained in:
Glowbal 2015-02-14 20:06:55 +01:00
parent 06efab0082
commit 155503d4a1
60 changed files with 292 additions and 588 deletions

View File

@ -52,6 +52,102 @@ class RscTitles {
};
};
};
class ACE_RscDisplayMessage {
duration = 7;
idd = 86411;
movingenable = 0;
onLoad = "uiNamespace setVariable ['ACE_RscDisplayMessage', _this select 0];"
fadein = 0;
class controlsBackground {
class header: ACE_gui_staticBase {
idc = 1;
type = CT_STATIC;
x = "safezoneX + (safezoneW / 10)";
y = "safezoneY + (30 * (safeZoneH / 40))";
w = "(safeZoneW / 10)";
h = "(safeZoneH / 40)";
style = ST_LEFT;
font = FontCSE;
SizeEx = "(((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 1)";
colorText[] = {0.85, 0.85, 0.85, 1.0};
colorBackground[] = {0, 0, 0, 0.9};
text = "";
};
class text: header {
idc = 2;
y = "safezoneY + (31 * (safeZoneH / 40))";
w = "(safeZoneW / 10) * 1.3";
colorText[] = {0.0, 0.0, 0.0, 1.0};
colorBackground[] = {1, 1, 1, 0.9};
text = "";
};
};
};
class ACE_RscDisplayInformation {
duration = 15;
idd = 86412;
movingenable = 0;
onLoad = "uiNamespace setVariable ['ACE_RscDisplayInformation', _this select 0];"
fadein = 0;
class controlsBackground {
class header: ACE_gui_staticBase {
idc = 1;
type = CT_STATIC;
x = "safezoneX + (safezoneW / 10)";
y = "safezoneY + (6 * (safeZoneH / 40))";
w = "(safeZoneW / 10)";
h = "(safeZoneH / 40)";
style = ST_LEFT;
font = FontCSE;
SizeEx = "(((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 1)";
colorText[] = {0.85, 0.85, 0.85, 1.0};
colorBackground[] = {0, 0, 0, 0.9};
text = "";
};
class text: header {
idc = 2;
y = "safezoneY + (7.1 * (safeZoneH / 40))";
w = "(safeZoneW / 10) * 1.3";
colorText[] = {0.0, 0.0, 0.0, 1.0};
colorBackground[] = {1, 1, 1, 0.9};
text = "";
};
class text2: text {
idc = 3;
y = "safezoneY + (8.2 * (safeZoneH / 40))";
};
class text3: text {
idc = 4;
y = "safezoneY + (9.3 * (safeZoneH / 40))";
};
class text4: text {
idc = 5;
y = "safezoneY + (10.4 * (safeZoneH / 40))";
};
class text5: text {
idc = 6;
y = "safezoneY + (11.5 * (safeZoneH / 40))";
};
class icon: ACE_gui_backgroundBase {
type = CT_STATIC;
idc = 10;
style = ST_PICTURE;
colorBackground[] = {0,0,0,1};
colorText[] = {1, 1, 1, 1};
font = FontCSE;
text = "";
sizeEx = 0.032;
x = "safezoneX + (safezoneW / 10)";
y = "safezoneY + (4 * (safeZoneH / 40))";
w = "(safeZoneH / 40)*2";
h = "(safeZoneH / 40)*2";
};
};
};
class ACE_EventHandlerHelper: ACE_Rsc_Display_Base {
idd = -1;
class controls {

View File

@ -1,6 +1,3 @@
class ACE_gui_RscProgress;
class ACE_gui_staticBase;
class GVAR(ProgressBar_Dialog) {
idd = -1;

View File

@ -16,6 +16,7 @@ PREP(adminKick);
PREP(ambientBrightness);
PREP(applyForceWalkStatus);
PREP(binarizeNumber);
PREP(blurScreen);
PREP(callCustomEventHandlers);
PREP(callCustomEventHandlersGlobal);
PREP(canGetInPosition);
@ -31,6 +32,7 @@ PREP(convertKeyCode);
PREP(createOrthonormalReference);
PREP(currentChannel);
PREP(disableUserInput);
PREP(displayIcon);
PREP(displayText);
PREP(displayTextPicture);
PREP(displayTextStructured);

View File

@ -94,8 +94,18 @@ class ACE_Settings {
isClientSetable = 1;
displayName = "$STR_ACE_Common_EnableNumberHotkeys";
};
class GVAR(settingFeedbackIcons) {
value = 1;
typeName = "SCALAR";
force = 0;
isClientSetable = 1;
displayName = "$STR_ACE_Common_SettingFeedbackIconsName";
description = "$STR_ACE_Common_SettingFeedbackIconsDesc";
values[] = {"Hide", "Top right, downwards", "Top right, to the left", "Top left, downwards", "Top left, to the right"};
};
};
#include "define.hpp"
#include <ProgressScreen.hpp>
#include <HintConfig.hpp>
#include <RscInfoType.hpp>

View File

@ -182,12 +182,12 @@ class ACE_gui_buttonBase {
bottom = 0.00;
};
textureNoShortcut = "";
animTextureNormal = QUOTE( PATHTOF(data\buttonNormal_gradient_top.paa) );
animTextureDisabled = QUOTE( PATHTOF(data\buttonDisabled_gradient.paa));
animTextureOver = QUOTE( PATHTOF(data\buttonNormal_gradient_top.paa));
animTextureFocused = QUOTE( PATHTOF(data\buttonNormal_gradient_top.paa));
animTexturePressed = QUOTE( PATHTOF(data\buttonNormal_gradient_top.paa));
animTextureDefault = QUOTE( PATHTOF(data\buttonNormal_gradient_top.paa));
animTextureNormal = "#(argb,8,8,3)color(0,0,0,0.9)";
animTextureDisabled = "#(argb,8,8,3)color(0,0,0,0.8)";
animTextureOver = "#(argb,8,8,3)color(1,1,1,1)";
animTextureFocused = "#(argb,8,8,3)color(1,1,1,1)";
animTexturePressed = "#(argb,8,8,3)color(1,1,1,1)";
animTextureDefault = "#(argb,8,8,3)color(1,1,1,1)";
period = 0.5;
font = FontCSE;
soundClick[] = {"\A3\ui_f\data\sound\RscButton\soundClick",0.09,1};

View File

@ -39,4 +39,4 @@ if (_show) then {
GVAR(MENU_ppHandle_GUI_BLUR_SCREEN) = nil;
};
};
};
};

View File

@ -0,0 +1,111 @@
/**
* fn_gui_displayIcon.sqf
* @Descr:
* @Author: Glowbal
*
* @Arguments: []
* @Return:
* @PublicAPI: true
*
* @Example ["myID", true, QUOTE(PATHTOF(data\icon_group.paa)), [1,1,1,1], 0] call ace_gui_fnc_displayIcon;
*/
#include "script_component.hpp"
// positions for the icon UI
#define RIGHT_SIDE (safezoneW + safezoneX)
#define LEFT_SIDE safezoneX
#define TOP_SIDE safeZoneY
#define BOTTOM_SIDE (safeZoneH + safezoneY)
#define ICON_WIDTH (2 * (((safezoneW / safezoneH) min 1.2) / 40))
#define X_POS_ICONS (RIGHT_SIDE - (1.5 * ICON_WIDTH))
#define Y_POS_ICONS (TOP_SIDE + (2.5 * ICON_WIDTH))
#define DIFFERENCE_ICONS (1.1 * ICON_WIDTH)
#define X_POS_ICONS_SECOND (RIGHT_SIDE - (4.4 * ICON_WIDTH))
#define Y_POS_ICONS_SECOND (TOP_SIDE + (1.1 * ICON_WIDTH))
// setting values
#define TOP_RIGHT_DOWN 1
#define TOP_RIGHT_LEFT 2
#define TOP_LEFT_DOWN 3
#define TOP_LEFT_RIGHT 4
// other constants
#define DEFAULT_TIME 6
private ["_iconId", "_show", "_icon", "_allControls", "_refresh", "_timeAlive", "_list", "_color"];
_iconId = _this select 0;
_show = _this select 1;
_icon = _this select 2;
_color = _this select 3;
_timeAlive = if (count _this > 4) then {_this select 4} else {DEFAULT_TIME};
disableSerialization;
_list = missionNamespace getvariable [QGVAR(displayIconList),[]];
_refresh = {
private ["_allControls"];
// Refreshing of all icons..
_allControls = missionNamespace getvariable [QGVAR(displayIconListControls), []];
{
ctrlDelete _x;
}foreach _allControls;
_allControls = [];
private ["_ctrl", "_setting"];
_setting = missionNamespace getvariable[QGVAR(settingFeedbackIcons), 0];
if (_setting > 0) then {
{
// +19000 because we want to make certain we are using free IDCs..
_ctrl = ((findDisplay 46) ctrlCreate ["RscPicture", _foreachIndex + 19000]);
_position = switch (_setting) do {
case TOP_RIGHT_DOWN: {[X_POS_ICONS, Y_POS_ICONS + (_foreachIndex * DIFFERENCE_ICONS), ICON_WIDTH, ICON_WIDTH]};
case TOP_RIGHT_LEFT: {[X_POS_ICONS_SECOND - ((_foreachIndex+3) * DIFFERENCE_ICONS), Y_POS_ICONS_SECOND - (ICON_WIDTH / 2), ICON_WIDTH, ICON_WIDTH]};
case TOP_LEFT_DOWN: {[LEFT_SIDE + (0.5 * ICON_WIDTH), Y_POS_ICONS + (_foreachIndex * DIFFERENCE_ICONS), ICON_WIDTH, ICON_WIDTH]};
case TOP_LEFT_RIGHT: {[LEFT_SIDE + (0.5 * ICON_WIDTH) - ((_foreachIndex+3) * DIFFERENCE_ICONS), Y_POS_ICONS_SECOND, ICON_WIDTH, ICON_WIDTH]};
default {[X_POS_ICONS, Y_POS_ICONS + (_foreachIndex * DIFFERENCE_ICONS), ICON_WIDTH, ICON_WIDTH]};
};
_ctrl ctrlSetPosition _position;
_ctrl ctrlsetText (_x select 1);
_ctrl ctrlSetTextColor (_x select 2);
_ctrl ctrlCommit 0;
_allControls pushback _ctrl;
}foreach (missionNamespace getvariable [QGVAR(displayIconList),[]]);
};
missionNamespace setvariable [QGVAR(displayIconListControls), _allControls];
};
if (_show) then {
if ({(_x select 0 == _iconId)} count _list == 0) then {
_list pushback [_iconId, _icon, _color, time];
} else {
{
if (_x select 0 == _iconId) exitwith {
_list set [_foreachIndex, [_iconId, _icon, _color, time]];
};
}foreach _list;
};
missionNamespace setvariable [QGVAR(displayIconList), _list];
call _refresh;
if (_timeAlive >= 0) then {
[{
[_this select 0, false, "", [0,0,0], 0] call FUNC(displayIcon);
}, [_iconId], _timeAlive, _timeAlive] call EFUNC(common,waitAndExecute);
};
} else {
if ({(_x select 0 == _iconId)} count _list == 1) then {
private "_newList";
_newList = [];
{
if (_x select 0 != _iconId) then {
_newList pushback _x;
};
}foreach _list;
missionNamespace setvariable [QGVAR(displayIconList), _newList];
call _refresh;
};
};

View File

@ -19,10 +19,10 @@ _type = [_this, 2, 0, [0]] call BIS_fnc_Param;
_icon = [_this, 3, "",[""]] call BIS_fnc_Param;
if (_title != "") then {
DISPLAY_LAYER cutRsc [QGVAR(RSC_DISPLAY_INFORMATION),"PLAIN"];
DISPLAY_LAYER cutRsc ['ACE_RscDisplayInformation',"PLAIN"];
disableSerialization;
_display = uiNamespace getvariable QGVAR(RSC_DISPLAY_INFORMATION);
_display = uiNamespace getvariable 'ACE_RscDisplayInformation';
if (!isnil "_display") then {
_headerCtrl = _display displayCtrl 1;
_headerCtrl ctrlSetText _title;

View File

@ -18,10 +18,10 @@ _content = [_this, 1, "",[""]] call BIS_fnc_Param;
_type = [_this, 2, 0, [0]] call BIS_fnc_Param;
if (_title != "" && _content != "") then {
DISPLAY_LAYER cutRsc [QGVAR(RSC_DISPLAY_MESSAGE),"PLAIN"];
DISPLAY_LAYER cutRsc ['ACE_RscDisplayMessage',"PLAIN"];
disableSerialization;
_display = uiNamespace getvariable QGVAR(RSC_DISPLAY_MESSAGE);
_display = uiNamespace getvariable 'ACE_RscDisplayMessage';
if (!isnil "_display") then {
_headerCtrl = _display displayCtrl 1;
_contentCtrl = _display displayCtrl 2;
@ -29,6 +29,7 @@ if (_title != "" && _content != "") then {
_headerCtrl ctrlSetText _title;
_contentCtrl ctrlSetText _content;
// TODO get a font that has the same width characters for all. Ask Jaynus.
_contentAmountOfChars = count (toArray _content);
_pos = ctrlPosition _contentCtrl;
_pos set [2, _contentAmountOfChars * ((((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 1)/ 3.3) max (safeZoneW / 11)];

View File

@ -36,10 +36,10 @@ _perFrameFunction = {
PARAMS_2(_parameters,_pfhID);
EXPLODE_8_PVT(_parameters,_args,_onFinish,_onFail,_condition,_player,_startTime,_totalTime,_exceptions);
private ["_elapsedTime", "_errorCode"];
_elapsedTime = time - _startTime;
_errorCode = -1;
if (isNull (uiNamespace getVariable [QGVAR(ctrlProgressBar), controlNull])) then {
_errorCode = 1;
} else {

View File

@ -42,6 +42,6 @@ if (isPlayer _reciever) then {
}foreach _content;
[_title,_content,_type] call EFUNC(gui,displayInformation);
[_title,_content,_type] call EFUNC(common,displayInformation);
};
};

View File

@ -41,6 +41,6 @@ if (isPlayer _reciever) then {
}foreach _parameters;
_content = format _localizationArray;
[_title,_content,_type] call EFUNC(gui,displayMessage);
[_title,_content,_type] call EFUNC(common,displayMessage);
};
};

View File

@ -315,6 +315,12 @@
<Polish>Ignoruj prośby wysłane przez innych graczy. Akceptacji wymagają między innymi akcje używania / współdzielenia wyposażenia, wykonywania określonych czynności.</Polish>
<Spanish>Rechazar Peticiones de otros jugadores. Pueden ser solicitudes para usar / compartir equipamiento, realizar ciertas acciones.</Spanish>
</Key>
<Key ID="STR_ACE_Common_SettingFeedbackIconsName">
<English>Feedback icons</English>
</Key>
<Key ID="STR_ACE_Common_SettingFeedbackIconsDesc">
<English>Select the position of or disable the feedback icons on your screen. These icons will show to provide extra feedback on your character status and actions performed.</English>
</Key>
</Package>
</Project>

View File

@ -1,11 +0,0 @@
class Extended_PreInit_EventHandlers {
class ADDON {
init = QUOTE( call compile preprocessFileLineNumbers QUOTE(QUOTE(PATHTOF(XEH_preInit.sqf))) );
};
};
class Extended_PostInit_EventHandlers {
class ADDON {
init = QUOTE( call compile preprocessFileLineNumbers QUOTE(QUOTE(PATHTOF(XEH_postInit.sqf))) );
};
};

View File

@ -1,2 +0,0 @@
#include "UI\define.hpp"
#include "UI\RscTitles.hpp"

View File

@ -1,11 +0,0 @@
ace_gui
=======
to be scrapped.
## Maintainers
The people responsible for merging changes to this component or answering potential questions.
- [Glowbal](https://github.com/Glowbal)

View File

@ -1,179 +0,0 @@
#define RIGHT_SIDE (safezoneW + safezoneX)
#define LEFT_SIDE safezoneX
#define TOP_SIDE safeZoneY
#define BOTTOM_SIDE (safeZoneH + safezoneY)
#define ICON_WIDTH (1.75 * (((safezoneW / safezoneH) min 1.2) / 40))
#define X_POS_ICONS RIGHT_SIDE - (1.1 * ICON_WIDTH)
#define Y_POS_ICONS TOP_SIDE + (2.2 * ICON_WIDTH)
#define DIFFERENCE_ICONS (1.1 * ICON_WIDTH)
class RscTitles {
class GVAR(iconsDisplay) {
duration = 1e+011;
idd = 1111;
movingenable = 0;
onLoad = QUOTE(uiNamespace setVariable [ARR_2(QUOTE(QGVAR(iconsDisplay)), _this select 0)]);
class controlsBackground {
class icon_1: ACE_gui_backgroundBase {
text = "";
colorText[] = {0.0,1.0,0.0,0.4};
idc = 10501;
x = X_POS_ICONS;
y = Y_POS_ICONS + (0 * DIFFERENCE_ICONS);
w = ICON_WIDTH;
h = ICON_WIDTH;
};
class icon_2: icon_1 {
idc = 10502;
y = Y_POS_ICONS + (1 * DIFFERENCE_ICONS);
};
class icon_3: icon_1 {
idc = 10503;
y = Y_POS_ICONS + (2 * DIFFERENCE_ICONS);
};
class icon_4: icon_1 {
idc = 10504;
y = Y_POS_ICONS + (3 * DIFFERENCE_ICONS);
};
class icon_5: icon_1 {
idc = 10505;
y = Y_POS_ICONS + (4 * DIFFERENCE_ICONS);
};
class icon_6: icon_1 {
idc = 10506;
y = Y_POS_ICONS + (5 * DIFFERENCE_ICONS);
};
};
};
class GVAR(RSC_PROGRESSBAR_LOADING) {
idd = -1;
onLoad = QUOTE(uiNamespace setVariable [ARR_2(QUOTE(QGVAR(RSC_PROGRESSBAR_LOADING)), _this select 0)]);
fadein = 0;
fadeout = 0;
duration = 10e10;
class Controls {
class background: ACE_gui_backgroundBase {
idc = -1;
colorBackground[] = {0,0,0,1};
colorText[] = {1, 1, 1, 1};
x = "1 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
y = "29 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
w = "38 * (((safezoneW / safezoneH) min 1.2) / 40)";
h = "0.4 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
text = "#(argb,8,8,3)color(0,0,0,0.4)";
};
class Progress: ACE_gui_RscProgress {
idc = 6;
x = "1 * (((safezoneW / safezoneH) min 1.2) / 40) + (safezoneX + (safezoneW - ((safezoneW / safezoneH) min 1.2))/2)";
y = "29 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) + (safezoneY + (safezoneH - (((safezoneW / safezoneH) min 1.2) / 1.2))/2)";
w = "38 * (((safezoneW / safezoneH) min 1.2) / 40)";
h = "0.4 * ((((safezoneW / safezoneH) min 1.2) / 1.2) / 25)";
colorFrame[] = {0,0,0,0};
colorBar[] = {0.27,0.5,0.31,0.6};
texture = "#(argb,8,8,3)color(1,1,1,0.7)";
};
};
};
class GVAR(RSC_DISPLAY_MESSAGE) {
duration = 7;
idd = 86411;
movingenable = 0;
onLoad = QUOTE(uiNamespace setVariable [ARR_2(QUOTE(QGVAR(RSC_DISPLAY_MESSAGE)), _this select 0)]);
fadein = 0;
class controlsBackground {
class header: ACE_gui_staticBase {
idc = 1;
type = CT_STATIC;
x = "safezoneX + (safezoneW / 10)";
y = "safezoneY + (30 * (safeZoneH / 40))";
w = "(safeZoneW / 10)";
h = "(safeZoneH / 40)";
style = ST_LEFT;
font = FontCSE;
SizeEx = "(((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 1)";
colorText[] = {0.85, 0.85, 0.85, 1.0};
colorBackground[] = {0, 0, 0, 0.9};
text = "";
};
class text: header {
idc = 2;
y = "safezoneY + (31 * (safeZoneH / 40))";
w = "(safeZoneW / 10) * 1.3";
colorText[] = {0.0, 0.0, 0.0, 1.0};
colorBackground[] = {1, 1, 1, 0.9};
text = "";
};
};
};
class GVAR(RSC_DISPLAY_INFORMATION) {
duration = 15;
idd = 86412;
movingenable = 0;
onLoad = QUOTE(uiNamespace setVariable [ARR_2(QUOTE(QGVAR(RSC_DISPLAY_INFORMATION)), _this select 0)]);
fadein = 0;
class controlsBackground {
class header: ACE_gui_staticBase {
idc = 1;
type = CT_STATIC;
x = "safezoneX + (safezoneW / 10)";
y = "safezoneY + (6 * (safeZoneH / 40))";
w = "(safeZoneW / 10)";
h = "(safeZoneH / 40)";
style = ST_LEFT;
font = FontCSE;
SizeEx = "(((((safezoneW / safezoneH) min 1.2) / 1.2) / 25) * 1)";
colorText[] = {0.85, 0.85, 0.85, 1.0};
colorBackground[] = {0, 0, 0, 0.9};
text = "";
};
class text: header {
idc = 2;
y = "safezoneY + (7.1 * (safeZoneH / 40))";
w = "(safeZoneW / 10) * 1.3";
colorText[] = {0.0, 0.0, 0.0, 1.0};
colorBackground[] = {1, 1, 1, 0.9};
text = "";
};
class text2: text {
idc = 3;
y = "safezoneY + (8.2 * (safeZoneH / 40))";
};
class text3: text {
idc = 4;
y = "safezoneY + (9.3 * (safeZoneH / 40))";
};
class text4: text {
idc = 5;
y = "safezoneY + (10.4 * (safeZoneH / 40))";
};
class text5: text {
idc = 6;
y = "safezoneY + (11.5 * (safeZoneH / 40))";
};
class icon: ACE_gui_backgroundBase {
type = CT_STATIC;
idc = 10;
style = ST_PICTURE;
colorBackground[] = {0,0,0,1};
colorText[] = {1, 1, 1, 1};
font = FontCSE;
text = "";
sizeEx = 0.032;
x = "safezoneX + (safezoneW / 10)";
y = "safezoneY + (4 * (safeZoneH / 40))";
w = "(safeZoneH / 40)*2";
h = "(safeZoneH / 40)*2";
};
};
};
};

View File

@ -1,11 +0,0 @@
/**
* XEH_postInit.sqf
* @Descr: N/A
* @Author: Glowbal
*
* @Arguments: []
* @Return:
* @PublicAPI: false
*/
#include "script_component.hpp"

View File

@ -1,25 +0,0 @@
/**
* XEH_preInit.sqf
* @Descr: N/A
* @Author: Glowbal
*
* @Arguments: []
* @Return:
* @PublicAPI: false
*/
#include "script_component.hpp"
ADDON = false;
PREP(loadingBar);
PREP(displayInformation);
PREP(displayMessage);
PREP(blurScreen);
PREP(displayIcon);
PREP(sendHintTo);
PREP(sendMessageTo);
PREP(sendDisplayInformationTo);
PREP(sendDisplayMessageTo);
ADDON = true;

View File

@ -1,27 +0,0 @@
#include "script_component.hpp"
class CfgPatches {
class ADDON {
units[] = {};
weapons[] = {};
requiredVersion = REQUIRED_VERSION;
requiredAddons[] = {"ACE_main"};
version = VERSION;
author[] = {$STR_ACE_Common_ACETeam};
authorUrl = "http://csemod.com"; // TODO website link?
};
};
class CfgAddons {
class PreloadAddons {
class ADDON {
list[] = {QUOTE(ADDON)};
};
};
};
#include "CfgEventHandlers.hpp"
// TODO Port over the UI defines
#include "GUI.hpp"
#include "empty.hpp"

Binary file not shown.

Binary file not shown.

View File

@ -1,21 +0,0 @@
#include "\z\ace\addons\gui\UI\define.hpp"
class ACE_common_empty_screen {
idd = 679123;
onLoad = "uiNamespace setVariable [""ACE_common_empty_screen"", _this select 0]";
onUnload = "if (missionNamespace getvariable [""ACE_common_DISABLE_USER_INPUT_SCREEN"", false)]) then { createDialog ""ACE_common_empty_screen""; }";
class controlsBackground {
class background : ACE_gui_backgroundBase {
idc = 1;
x = safezoneX;
y = safezoneY;
w = safezoneW;
h = safezoneH;
text = "";
moving = 0;
};
};
class controls {
};
};

View File

@ -1,79 +0,0 @@
/**
* fn_gui_displayIcon.sqf
* @Descr:
* @Author: Glowbal
*
* @Arguments: []
* @Return:
* @PublicAPI: true
*
* @Example ["myID", true, QUOTE(PATHTOF(data\icon_group.paa)), [1,1,1,1]] call ace_gui_fnc_displayIcon;
*/
#include "script_component.hpp"
#define MAX_N_ICONS 6
private ["_iconId", "_show", "_icon", "_spot", "_idc", "_display","_next_IDC", "_nextText"];
_iconId = _this select 0;
_show = _this select 1;
_icon = _this select 2;
_color = _this select 3;
disableSerialization;
_list = missionNamespace getvariable [QGVAR(displayIconList),[]];
_display = uiNamespace getvariable QGVAR(iconsDisplay);
if (isNil "_display") then {
// Display the icons
11401 cutRsc [QGVAR(iconsDisplay),"PLAIN"];
_display = uiNamespace getvariable QGVAR(iconsDisplay);
};
if (_show) then {
if ({(_x select 0 == _iconId)} count _list == 0) then {
_list pushback [_iconId, _icon, _color];
} else {
{
if (_x select 0 == _iconId) exitwith {
_list set [_foreachIndex, [_iconId, _icon, _color]];
};
}foreach _list;
};
missionNamespace setvariable [QGVAR(displayIconList), _list];
{
if (_x select 0 == _iconId) exitwith {
_idc = 10501 + _foreachIndex;
_ctrl = _display displayCtrl _idc;
_ctrl ctrlsetText _icon;
_ctrl ctrlSetTextColor _color;
};
}foreach _list;
} else {
if ({(_x select 0 == _iconId)} count _list == 1) then {
_newList = [];
{
if (_x select 0 != _iconId) then {
_newList pushback _x;
};
}foreach _list;
missionNamespace setvariable [QGVAR(displayIconList), _newList];
for "_i" from 0 to (MAX_N_ICONS - 1) /* step +1 */ do {
_idc = 10501 + _i;
_ctrl = _display displayCtrl _idc;
_ctrl ctrlsetText "";
_ctrl ctrlSetTextColor [1,1,1,1];
};
{
_idc = 10501 + _foreachIndex;
_ctrl = _display displayCtrl _idc;
_ctrl ctrlsetText (_x select 1);
_ctrl ctrlSetTextColor (_x select 2);
}foreach _newList;
};
};

View File

@ -1,64 +0,0 @@
/**
* fn_gui_loadingbar.sqf
* @Descr: Displays a loading bar and halts script until loading bar has finished
* @Author: Glowbal
*
* @Arguments: [timeToWait NUMBER, condition CODE (Optional), onSuccess CODE (Optional), onFailure CODE (Optional), arguments ARRAY (Optional)]
* @Return: BOOl Returns true if loading bar has fully finished. Otherwise false
* @PublicAPI: true
*/
#include "script_component.hpp"
private ["_timeToWait","_cond","_onfailure","_onSuccess","_args"];
_timeToWait = _this select 0;
_cond = [_this, 1, {true}, [{true}]] call BIS_fnc_Param;
_onSuccess = [_this, 2, {}, [{}]] call BIS_fnc_Param;
_onfailure = [_this, 3, {}, [{}]] call BIS_fnc_Param;
_args = [_this, 4, [], [[]]] call BIS_fnc_Param;
if (_timeToWait > 0) exitwith {
GVAR(LOADING_BAR_STATUS) = 0;
disableSerialization;
1534 cutRsc [QGVAR(RSC_PROGRESSBAR_LOADING),"plain"];
[{
private ["_args","_timeToWait","_start","_cond","_onSuccess","_onfailure","_params"];
_args = _this select 0;
_start = _args select 0;
_timeToWait = _args select 1;
_cond = _args select 2;
_onSuccess = _args select 3;
_onfailure = _args select 4;
_params = _args select 5;
if !(_params call _cond) exitwith {
[(_this select 1)] call cba_fnc_removePerFrameHandler;
1534 cutText ["","plain"];
_params call _onfailure;
};
if (GVAR(LOADING_BAR_STATUS) >= 1) exitwith {
[(_this select 1)] call cba_fnc_removePerFrameHandler;
1534 cutText ["","plain"];
_params call _onSuccess;
};
private "_dialog";
disableSerialization;
_dialog = uiNamespace getvariable QGVAR(RSC_PROGRESSBAR_LOADING);
GVAR(LOADING_BAR_STATUS) = (diag_tickTime - _start) / _timeToWait;
(_dialog displayCtrl 6) progressSetPosition GVAR(LOADING_BAR_STATUS);
}, 0, [diag_tickTime, _timeToWait, _cond, _onSuccess, _onfailure, _args]] call CBA_fnc_addPerFrameHandler;
true;
};
if (_args call _cond) exitwith {
_args call _onSuccess;
true;
};
_args call _onfailure;
false;

View File

@ -1,26 +0,0 @@
/**
* fn_sendHintTo.sqf
* @Descr: Sends a hint to player unit across network
* @Author: Glowbal
*
* @Arguments: [reciever OBJECT, message STRING]
* @Return: void
* @PublicAPI: true
*/
#include "script_component.hpp"
private ["_reciever","_message"];
_reciever = _this select 0;
_message = _this select 1;
if (isPlayer _reciever) then {
if (!local _reciever) then {
[_this, QUOTE(FUNC(sendHintTo)), _reciever, false] call EFUNC(common,execRemoteFnc);
} else {
if (isLocalized _message) then {
_message = localize _message;
};
hintsilent format ["%1",_message];
};
};

View File

@ -1,31 +0,0 @@
/**
* fn_sendMessageTo.sqf
* @Descr: Sends a chat message to player unit across the network
* @Author: Glowbal
*
* @Arguments: [reciever OBJECT, message STRING]
* @Return: void
* @PublicAPI: true
*/
#include "script_component.hpp"
private ["_reciever","_message"];
_reciever = _this select 0;
_message = _this select 1;
if (isPlayer _reciever) then {
if (!local _reciever) then {
[_this, QUOTE(FUNC(sendMessageTo)), _reciever, false] call EFUNC(common,execRemoteFnc);
} else {
if (isnil QGVAR(LOGIC_OBJECT)) exitwith {
// need to create an object instead
};
if (isLocalized _message) then {
_message = localize _message;
};
GVAR(LOGIC_OBJECT) globalChat format ["%1",_message];
};
};

View File

@ -1,12 +0,0 @@
#define COMPONENT GUI
#include "\z\ace\addons\main\script_mod.hpp"
#ifdef DEBUG_ENABLED_GUI
#define DEBUG_MODE_FULL
#endif
#ifdef DEBUG_SETTINGS_GUI
#define DEBUG_SETTINGS DEBUG_SETTINGS_GUI
#endif
#include "\z\ace\addons\main\script_macros.hpp"

View File

@ -1,12 +0,0 @@
#define COMPONENT GUI
#include "\z\ace\addons\main\script_mod.hpp"
#ifdef DEBUG_ENABLED_GUI
#define DEBUG_MODE_FULL
#endif
#ifdef DEBUG_SETTINGS_GUI
#define DEBUG_SETTINGS DEBUG_SETTINGS_GUI
#endif
#include "\z\ace\addons\main\script_macros.hpp"

View File

@ -1,7 +0,0 @@
<?xml version="1.0" encoding="utf-8" ?>
<Project name="ACE3">
<Package name="ACE_gui">
<Container ID="GUI">
</Container>
</Package>
</Project>

View File

@ -7,7 +7,7 @@ class CfgPatches
units[] = {"ACE_medical_supply_crate_cms", "ACE_bandage_basicItem","ACE_packing_bandageItem","ACE_bandageElasticItem","ACE_tourniquetItem","ACE_splintItem","ACE_morphineItem","ACE_atropineItem","ACE_epinephrineItem","ACE_plasma_ivItem","ACE_plasma_iv_500Item","ACE_plasma_iv250Item","ACE_blood_ivItem","ACE_blood_iv_500Item","ACE_blood_iv_250Item","ACE_saline_ivItem","ACE_saline_iv_500Item","ACE_saline_iv_250Item","ACE_quikclotItem","ACE_nasopharyngeal_tubeItem","ACE_opaItem","ACE_liquidSkinItem","ACE_chestsealItem","ACE_personal_aid_kitItem"};
weapons[] = {"ACE_surgical_kit"};
requiredVersion = REQUIRED_VERSION;
requiredAddons[] = {"ACE_gui","ACE_common"};
requiredAddons[] = {"ACE_common"};
version = VERSION;
author[] = {$STR_ACE_Common_ACETeam, "Glowbal"};
authorUrl = "http://csemod.com";

View File

@ -51,7 +51,7 @@ if ([_caller] call FUNC(isMedic)) then {
_title = format["STR_ACE_CHECK_BLOODPRESSURE"];
_content = ["STR_ACE_CHECK_BLOODPRESSURE_CHECKED_MEDIC", _output];
[_caller, _title, _content, 0,[[_unit] call EFUNC(common,getName), round(_bloodPressureHigh),round(_bloodPressureLow)] ] call EFUNC(gui,sendDisplayInformationTo);
[_caller, _title, _content, 0,[[_unit] call EFUNC(common,getName), round(_bloodPressureHigh),round(_bloodPressureLow)] ] call EFUNC(common,sendDisplayInformationTo);
if (_logOutPut != "") then {
[_unit,"examine",format["%1 checked Blood Pressure: %2",[_caller] call EFUNC(common,getName),_logOutPut]] call FUNC(addToQuickViewLog);

View File

@ -19,7 +19,7 @@ if ([_caller] call FUNC(isSetTreatmentMutex)) exitwith {};
_title = format["STR_ACE_CHECK_PULSE"];
_content = ["STR_ACE_CHECK_PULSE_CONTENT"];
[_caller, _title, _content] call EFUNC(gui,sendDisplayInformationTo);
[_caller, _title, _content] call EFUNC(common,sendDisplayInformationTo);
_caller setvariable [QGVAR(StartingPositionHandleTreatment), getPos _caller];
[2 + round(random(1)),
@ -32,8 +32,8 @@ _caller setvariable [QGVAR(StartingPositionHandleTreatment), getPos _caller];
[_caller,false] call FUNC(treatmentMutex);
}, // on success
{
[(_this select 0), "STR_ACE_CANCELED", ["STR_ACE_ACTION_CANCELED","STR_ACE_YOU_MOVED_AWAY"]] call EFUNC(gui,sendDisplayInformationTo);
[(_this select 0), "STR_ACE_CANCELED", ["STR_ACE_ACTION_CANCELED","STR_ACE_YOU_MOVED_AWAY"]] call EFUNC(common,sendDisplayInformationTo);
[(_this select 0),false] call FUNC(treatmentMutex);
}, // on failure
[_caller, _target] // arguments
] call EFUNC(gui,loadingBar);
] call EFUNC(common,loadingBar);

View File

@ -19,7 +19,7 @@ if ([_caller] call FUNC(isSetTreatmentMutex)) exitwith {};
_title = format["STR_ACE_CHECK_BLOODPRESSURE"];
_content = ["STR_ACE_CHECK_BLOODPRESSURE_CONTENT"];
[_caller, _title, _content] call EFUNC(gui,sendDisplayInformationTo);
[_caller, _title, _content] call EFUNC(common,sendDisplayInformationTo);
_caller setvariable [QGVAR(StartingPositionHandleTreatment), getPos _caller];
[2 + round(random(1)),
@ -32,9 +32,9 @@ _caller setvariable [QGVAR(StartingPositionHandleTreatment), getPos _caller];
[_caller,false] call FUNC(treatmentMutex);
}, // on success
{
[(_this select 0), "STR_ACE_CANCELED", ["STR_ACE_ACTION_CANCELED","STR_ACE_YOU_MOVED_AWAY"]] call EFUNC(gui,sendDisplayInformationTo);
[(_this select 0), "STR_ACE_CANCELED", ["STR_ACE_ACTION_CANCELED","STR_ACE_YOU_MOVED_AWAY"]] call EFUNC(common,sendDisplayInformationTo);
[(_this select 0),false] call FUNC(treatmentMutex);
}, // on failure
[_caller, _target] // arguments
] call EFUNC(gui,loadingBar);
] call EFUNC(common,loadingBar);

View File

@ -87,9 +87,9 @@ _caller setvariable [QGVAR(StartingPositionHandleTreatment), getPos _caller];
}, // on success
{
[(_this select 0), "STR_ACE_CANCELED", ["STR_ACE_ACTION_CANCELED","STR_ACE_YOU_MOVED_AWAY"]] call EFUNC(gui,sendDisplayInformationTo);
[(_this select 0), "STR_ACE_CANCELED", ["STR_ACE_ACTION_CANCELED","STR_ACE_YOU_MOVED_AWAY"]] call EFUNC(common,sendDisplayInformationTo);
[(_this select 0), false] call FUNC(treatmentMutex);
[(_this select 0), objNull,[0, 0, 0]] call EFUNC(common,carryObj);
}, // on failure
[_caller, _unit, _killOnDrop] // arguments
] call EFUNC(gui,loadingBar);
] call EFUNC(common,loadingBar);

View File

@ -44,7 +44,7 @@ if (_heartRate > 1.0) then {
_title = "STR_ACE_CHECK_PULSE";
_content = ["STR_ACE_CHECK_PULSE_CHECKED_MEDIC",_heartRateOutput];
[_caller, _title, _content, 0, [[_unit] call EFUNC(common,getName), round(_heartRate)]] call EFUNC(gui,sendDisplayInformationTo);
[_caller, _title, _content, 0, [[_unit] call EFUNC(common,getName), round(_heartRate)]] call EFUNC(common,sendDisplayInformationTo);
if (_logOutPut != "") then {
[_unit,"examine",format["%1 checked Heart Rate: %2",[_caller] call EFUNC(common,getName),_logOutPut]] call FUNC(addToQuickViewLog);

View File

@ -19,7 +19,7 @@ if ([_caller] call FUNC(isSetTreatmentMutex)) exitwith {};
_title = format["STR_ACE_CHECK_RESPONSE"];
_content = ["STR_ACE_CHECK_RESPONSE_CONTENT"];
[_caller, _title, _content] call EFUNC(gui,sendDisplayInformationTo);
[_caller, _title, _content] call EFUNC(common,sendDisplayInformationTo);
_caller setvariable [QGVAR(StartingPositionHandleTreatment), getPos _caller];
[2 + round(random(1)),
@ -38,14 +38,14 @@ _caller setvariable [QGVAR(StartingPositionHandleTreatment), getPos _caller];
_title = format["STR_ACE_CHECK_RESPONSE"];
_content = [format[localize "STR_ACE_CHECK_REPONSE_YOU_CHECKED",[_target] call EFUNC(common,getName)],_output];
[_caller, _title, _content] call EFUNC(gui,sendDisplayInformationTo);
[_caller, _title, _content] call EFUNC(common,sendDisplayInformationTo);
[_target,"examine",_output] call FUNC(addToQuickViewLog);
[_caller,false] call FUNC(treatmentMutex);
}, // on success
{
[(_this select 0), "STR_ACE_CANCELED", ["STR_ACE_ACTION_CANCELED","STR_ACE_YOU_MOVED_AWAY"]] call EFUNC(gui,sendDisplayInformationTo);
[(_this select 0), "STR_ACE_CANCELED", ["STR_ACE_ACTION_CANCELED","STR_ACE_YOU_MOVED_AWAY"]] call EFUNC(common,sendDisplayInformationTo);
[(_this select 0),false] call FUNC(treatmentMutex);
}, // on failure
[_caller, _target] // arguments
] call EFUNC(gui,loadingBar);
] call EFUNC(common,loadingBar);

View File

@ -94,9 +94,9 @@ _caller setvariable [QGVAR(StartingPositionHandleTreatment), getPos _caller];
}, // on success
{
[(_this select 0), "STR_ACE_CANCELED", ["STR_ACE_ACTION_CANCELED","STR_ACE_YOU_MOVED_AWAY"]] call EFUNC(gui,sendDisplayInformationTo);
[(_this select 0), "STR_ACE_CANCELED", ["STR_ACE_ACTION_CANCELED","STR_ACE_YOU_MOVED_AWAY"]] call EFUNC(common,sendDisplayInformationTo);
[(_this select 0), false] call FUNC(treatmentMutex);
[(_this select 0), objNull,[0, 0, 0]] call EFUNC(common,carryObj);
}, // on failure
[_caller, _unit, _killOnDrop] // arguments
] call EFUNC(gui,loadingBar);
] call EFUNC(common,loadingBar);

View File

@ -53,10 +53,10 @@ _caller setvariable [QGVAR(StartingPositionHandleTreatment), getPos _caller];
[_caller,false] call FUNC(treatmentMutex);
}, // on success
{
[(_this select 0), "STR_ACE_CANCELED", ["STR_ACE_ACTION_CANCELED","STR_ACE_YOU_MOVED_AWAY"]] call EFUNC(gui,sendDisplayInformationTo);
[(_this select 0), "STR_ACE_CANCELED", ["STR_ACE_ACTION_CANCELED","STR_ACE_YOU_MOVED_AWAY"]] call EFUNC(common,sendDisplayInformationTo);
[(_this select 0),false] call FUNC(treatmentMutex);
}, // on failure
[_caller, _target, _selectionName] // arguments
] call EFUNC(gui,loadingBar);
] call EFUNC(common,loadingBar);

View File

@ -19,7 +19,7 @@ if (!(isPlayer _healer) && GVAR(setting_allowAIFullHeal) && !([_unit] call EFUNC
[_unit, QGVAR(bandagedWounds),[[0,0,0],[0,0,0],[0,0,0],[0,0,0],[0,0,0],[0,0,0]]] call EFUNC(common,setDefinedVariable);
if (_unit != _healer) then {
[_unit,"STR_ACE_BANDAGED","STR_ACE_IS_BANDAGING_YOU", 0, [[_healer] call EFUNC(common,getName)]] call EFUNC(gui,sendDisplayMessageTo);
[_unit,"STR_ACE_BANDAGED","STR_ACE_IS_BANDAGING_YOU", 0, [[_healer] call EFUNC(common,getName)]] call EFUNC(common,sendDisplayMessageTo);
};
[_unit,"treatment",format["%1 has patched up the patient",[_healer] call EFUNC(common,getName)]] call FUNC(addActivityToLog);

View File

@ -19,7 +19,7 @@ _removeItem = _this select 3;
if (!local _target) exitwith{};
[_target,"STR_ACE_AIRWAY","STR_ACE_IS_TREATING_YOUR_AIRWAY",0, [([_caller] call EFUNC(common,getName))]] call EFUNC(gui,sendDisplayMessageTo);
[_target,"STR_ACE_AIRWAY","STR_ACE_IS_TREATING_YOUR_AIRWAY",0, [([_caller] call EFUNC(common,getName))]] call EFUNC(common,sendDisplayMessageTo);
[_target,_removeItem] call FUNC(addToTriageList);

View File

@ -24,7 +24,7 @@ if (!local _target) exitwith{
};
if (_caller != _target) then {
[_target,"STR_ACE_BANDAGING", "STR_ACE_IS_BANDAGING_YOU", 0, [[_treatingPerson] call EFUNC(common,getName)]] call EFUNC(gui,sendDisplayMessageTo);
[_target,"STR_ACE_BANDAGING", "STR_ACE_IS_BANDAGING_YOU", 0, [[_treatingPerson] call EFUNC(common,getName)]] call EFUNC(common,sendDisplayMessageTo);
};
[_target,_removeItem] call FUNC(addToTriageList);

View File

@ -56,7 +56,7 @@ _caller setvariable [QGVAR(StartingPositionHandleTreatment), getPos _caller];
}, // on success
{
private ["_caller","_target", "_selectionName", "_prevAnim"];
[(_this select 0), "STR_ACE_CANCELED", ["STR_ACE_ACTION_CANCELED","STR_ACE_YOU_MOVED_AWAY"]] call EFUNC(gui,sendDisplayInformationTo);
[(_this select 0), "STR_ACE_CANCELED", ["STR_ACE_ACTION_CANCELED","STR_ACE_YOU_MOVED_AWAY"]] call EFUNC(common,sendDisplayInformationTo);
if (_prevAnim != "") then {
[_caller,_prevAnim, 0] call EFUNC(common,doAnimation);
@ -66,6 +66,6 @@ _caller setvariable [QGVAR(StartingPositionHandleTreatment), getPos _caller];
["Medical_treatmentCompleted", [_caller, _target, _selectionName, _removeItem]] call ace_common_fnc_localEvent;
}, // on failure
[_caller, _target, _selectionName, _removeItem, _prevAnim] // arguments
] call EFUNC(gui,loadingBar);
] call EFUNC(common,loadingBar);
true;

View File

@ -23,7 +23,7 @@ _selectionName = _this select 2;
_removeItem = _this select 3;
_prevAnim = _this select 4;
[_caller,"STR_ACE_STITCHING","STR_ACE_START_STITCHING_INJURIES", 0, [[_injuredPerson] call EFUNC(common,getName),_selectionName]] call EFUNC(gui,sendDisplayMessageTo);
[_caller,"STR_ACE_STITCHING","STR_ACE_START_STITCHING_INJURIES", 0, [[_injuredPerson] call EFUNC(common,getName),_selectionName]] call EFUNC(common,sendDisplayMessageTo);
_bandagedWounds = [_injuredPerson,QGVAR(bandagedWounds)] call EFUNC(common,getDefinedVariable);
_bodyPartN = [_selectionName] call FUNC(getBodyPartNumber);
@ -46,12 +46,12 @@ _caller setvariable [QGVAR(lastStichPerformed), diag_tickTime];
_prevAnim = _args select 4;
if ((vehicle _caller != _caller) || ((getPos _caller) distance (_caller getvariable GVAR(ORIGINAL_POSITION_PLAYER))) >= 1) then {
[(_this select 0), "STR_ACE_CANCELED", ["STR_ACE_ACTION_CANCELED","STR_ACE_YOU_MOVED_AWAY"]] call EFUNC(gui,sendDisplayInformationTo);
[(_this select 0), "STR_ACE_CANCELED", ["STR_ACE_ACTION_CANCELED","STR_ACE_YOU_MOVED_AWAY"]] call EFUNC(common,sendDisplayInformationTo);
if (_prevAnim != "") then {
[_caller,_prevAnim, 0] call EFUNC(common,doAnimation);
};
[QGVAR(treatmentIconID), false, QUOTE(PATHTOF(data\icons\icon_advanced_treatment.paa)), [1,1,1,1]] call EFUNC(gui,displayIcon);
[QGVAR(treatmentIconID), false, QUOTE(PATHTOF(data\icons\icon_advanced_treatment.paa)), [1,1,1,1]] call EFUNC(common,displayIcon);
["Medical_handleTreatment_Stitching", [_caller, _target, _selectionName, _removeItem, false]] call ace_common_fnc_localEvent;
["Medical_treatmentCompleted", [_caller, _target, _selectionName, _removeItem]] call ace_common_fnc_localEvent;
@ -83,7 +83,7 @@ _caller setvariable [QGVAR(lastStichPerformed), diag_tickTime];
if (_prevAnim != "") then {
[_caller,_prevAnim, 0] call EFUNC(common,doAnimation);
};
[QGVAR(treatmentIconID), false, QUOTE(PATHTOF(data\icons\icon_advanced_treatment.paa)), [1,1,1,1]] call EFUNC(gui,displayIcon);
[QGVAR(treatmentIconID), false, QUOTE(PATHTOF(data\icons\icon_advanced_treatment.paa)), [1,1,1,1]] call EFUNC(common,displayIcon);
["Medical_handleTreatment_Stitching", [_caller, _target, _selectionName, _removeItem, true]] call ace_common_fnc_localEvent;
["Medical_treatmentCompleted", [_caller, _target, _selectionName, _removeItem]] call ace_common_fnc_localEvent;
@ -99,6 +99,6 @@ _caller setvariable [QGVAR(lastStichPerformed), diag_tickTime];
{}, // on success
{}, // on failure
[_caller] // arguments
] call EFUNC(gui,loadingBar);
] call EFUNC(common,loadingBar);
true;

View File

@ -42,7 +42,7 @@ _caller setvariable [QGVAR(StartingPositionHandleTreatment), getPos _caller];
[_caller,_prevAnim, 0] call EFUNC(common,doAnimation);
};
[QGVAR(treatmentIconID), false, "", [1,1,1,1]] call EFUNC(gui,displayIcon);
[QGVAR(treatmentIconID), false, "", [1,1,1,1]] call EFUNC(common,displayIcon);
["Medical_handleTreatment_FullHeal", [_caller, _target, _selectionName, _removeItem, true]] call ace_common_fnc_localEvent;
["Medical_treatmentCompleted", [_caller, _target, _selectionName, _removeItem]] call ace_common_fnc_localEvent;
}, // on success
@ -54,18 +54,18 @@ _caller setvariable [QGVAR(StartingPositionHandleTreatment), getPos _caller];
_removeItem = _this select 3;
_prevAnim = _this select 4;
[(_this select 0), "STR_ACE_CANCELED", ["STR_ACE_ACTION_CANCELED","STR_ACE_YOU_MOVED_AWAY"]] call EFUNC(gui,sendDisplayInformationTo);
[(_this select 0), "STR_ACE_CANCELED", ["STR_ACE_ACTION_CANCELED","STR_ACE_YOU_MOVED_AWAY"]] call EFUNC(common,sendDisplayInformationTo);
if (_prevAnim != "") then {
[_caller,_prevAnim, 0] call EFUNC(common,doAnimation);
};
[QGVAR(treatmentIconID), false, "", [1,1,1,1]] call EFUNC(gui,displayIcon);
[QGVAR(treatmentIconID), false, "", [1,1,1,1]] call EFUNC(common,displayIcon);
["Medical_handleTreatment_FullHeal", [_caller, _target, _selectionName, _removeItem, false]] call ace_common_fnc_localEvent;
["Medical_treatmentCompleted", [_caller, _target, _selectionName, _removeItem]] call ace_common_fnc_localEvent;
}, // on failure
[_caller, _target, _selectionName, _removeItem, _prevAnim] // arguments
] call EFUNC(gui,loadingBar);
] call EFUNC(common,loadingBar);
if (!(_unit getvariable [QEGVAR(common,isDead),false]) && alive _unit) then {

View File

@ -31,7 +31,7 @@ if (vehicle _caller == _caller && (vehicle _target == _target) && !(stance _call
if (ACE_player == _caller) then {
// Displaying the treatment icon action
[QGVAR(treatmentIconID), true, QUOTE(PATHTOF(data\icons\icon_advanced_treatment.paa)), [1,1,1,1]] call EFUNC(gui,displayIcon);
[QGVAR(treatmentIconID), true, QUOTE(PATHTOF(data\icons\icon_advanced_treatment.paa)), [1,1,1,1]] call EFUNC(common,displayIcon);
};
_isHandled = switch (_removeItem) do {
@ -77,7 +77,7 @@ _isHandled = switch (_removeItem) do {
_selectionName = _this select 2;
_removeItem = _this select 3;
_prevAnim = _this select 4;
[(_this select 0), "STR_ACE_CANCELED", ["STR_ACE_ACTION_CANCELED","STR_ACE_YOU_MOVED_AWAY"]] call EFUNC(gui,sendDisplayInformationTo);
[(_this select 0), "STR_ACE_CANCELED", ["STR_ACE_ACTION_CANCELED","STR_ACE_YOU_MOVED_AWAY"]] call EFUNC(common,sendDisplayInformationTo);
if (_prevAnim != "") then {
[_caller,_prevAnim, 0] call EFUNC(common,doAnimation);
@ -87,7 +87,7 @@ _isHandled = switch (_removeItem) do {
["Medical_treatmentCompleted", [_caller, _target, _selectionName, _removeItem]] call ace_common_fnc_localEvent;
}, // on failure
[_caller, _target, _selectionName, _removeItem, _prevAnim] // arguments
] call EFUNC(gui,loadingBar);
] call EFUNC(common,loadingBar);
true;
};
};

View File

@ -31,7 +31,7 @@ if (_part == 0 || _part == 1) exitwith {
if (ACE_player == _caller) then {
// Displaying the treatment icon action
[QGVAR(treatmentIconID), true, QUOTE(PATHTOF(data\icons\icon_airway_management.paa)), [1,1,1,1]] call EFUNC(gui,displayIcon);
[QGVAR(treatmentIconID), true, QUOTE(PATHTOF(data\icons\icon_airway_management.paa)), [1,1,1,1]] call EFUNC(common,displayIcon);
};
// Get the current position for the treatment person
@ -57,7 +57,7 @@ if (_part == 0 || _part == 1) exitwith {
}, // on success
{
private ["_caller","_target", "_selectionName", "_prevAnim"];
[(_this select 0), "STR_ACE_CANCELED", ["STR_ACE_ACTION_CANCELED","STR_ACE_YOU_MOVED_AWAY"]] call EFUNC(gui,sendDisplayInformationTo);
[(_this select 0), "STR_ACE_CANCELED", ["STR_ACE_ACTION_CANCELED","STR_ACE_YOU_MOVED_AWAY"]] call EFUNC(common,sendDisplayInformationTo);
if (_prevAnim != "") then {
[_caller,_prevAnim, 0] call EFUNC(common,doAnimation);
@ -67,7 +67,7 @@ if (_part == 0 || _part == 1) exitwith {
["Medical_treatmentCompleted", [_caller, _target, _selectionName, _removeItem]] call ace_common_fnc_localEvent;
}, // on failure
[_caller, _target, _selectionName, _removeItem, _prevAnim] // arguments
] call EFUNC(gui,loadingBar);
] call EFUNC(common,loadingBar);
true;
};
// TODO display message to caller

View File

@ -39,11 +39,11 @@ if (ACE_player == _caller) then {
};
default {
[_caller, "STR_ACE_BANDAGING", "STR_ACE_APPLY_BANDAGE", 0, [[_target] call EFUNC(common,getName), _selectionName]] call EFUNC(gui,sendDisplayMessageTo);
[_caller, "STR_ACE_BANDAGING", "STR_ACE_APPLY_BANDAGE", 0, [[_target] call EFUNC(common,getName), _selectionName]] call EFUNC(common,sendDisplayMessageTo);
};
};
// Displaying the treatment icon action
[QGVAR(treatmentIconID), true, QUOTE(PATHTOF(data\icons\bandage_fracture_small.paa)), [1,1,1,1]] call EFUNC(gui,displayIcon);
[QGVAR(treatmentIconID), true, QUOTE(PATHTOF(data\icons\bandage_fracture_small.paa)), [1,1,1,1]] call EFUNC(common,displayIcon);
};
// Get the current position for the treatment person
@ -83,7 +83,7 @@ if (isnil QGVAR(setting_bandageWaitingTime)) then {
}, // on success
{
private ["_caller","_target","_selectedData", "_selectionName", "_prevAnim"];
[(_this select 0), "STR_ACE_CANCELED", ["STR_ACE_ACTION_CANCELED","STR_ACE_YOU_MOVED_AWAY"]] call EFUNC(gui,sendDisplayInformationTo);
[(_this select 0), "STR_ACE_CANCELED", ["STR_ACE_ACTION_CANCELED","STR_ACE_YOU_MOVED_AWAY"]] call EFUNC(common,sendDisplayInformationTo);
if (_prevAnim != "") then {
[_caller,_prevAnim, 0] call EFUNC(common,doAnimation);
@ -92,6 +92,6 @@ if (isnil QGVAR(setting_bandageWaitingTime)) then {
["Medical_treatmentCompleted", [_caller, _target, _selectionName, _removeItem]] call ace_common_fnc_localEvent;
}, // on failure
[_caller, _target, _selectionName, _removeItem, _prevAnim] // arguments
] call EFUNC(gui,loadingBar);
] call EFUNC(common,loadingBar);
true;

View File

@ -28,7 +28,7 @@ if (vehicle _caller == _caller && (vehicle _target == _target) && !(stance _call
if (ACE_player == _caller) then {
// Displaying the treatment icon action
[QGVAR(treatmentIconID), true, QUOTE(PATHTOF(data\icons\medication_small.paa)), [1,1,1,1]] call EFUNC(gui,displayIcon);
[QGVAR(treatmentIconID), true, QUOTE(PATHTOF(data\icons\medication_small.paa)), [1,1,1,1]] call EFUNC(common,displayIcon);
};
// Get the current position for the treatment person
@ -54,7 +54,7 @@ _caller setvariable [QGVAR(StartingPositionHandleTreatment), getPos _caller];
}, // on success
{
private ["_caller","_target", "_selectionName", "_prevAnim"];
[(_this select 0), "STR_ACE_CANCELED", ["STR_ACE_ACTION_CANCELED","STR_ACE_YOU_MOVED_AWAY"]] call EFUNC(gui,sendDisplayInformationTo);
[(_this select 0), "STR_ACE_CANCELED", ["STR_ACE_ACTION_CANCELED","STR_ACE_YOU_MOVED_AWAY"]] call EFUNC(common,sendDisplayInformationTo);
if (_prevAnim != "") then {
[_caller,_prevAnim, 0] call EFUNC(common,doAnimation);
@ -64,6 +64,6 @@ _caller setvariable [QGVAR(StartingPositionHandleTreatment), getPos _caller];
["Medical_treatmentCompleted", [_caller, _target, _selectionName, _removeItem]] call ace_common_fnc_localEvent;
}, // on failure
[_caller, _target, _selectionName, _removeItem, _prevAnim] // arguments
] call EFUNC(gui,loadingBar);
] call EFUNC(common,loadingBar);
true;

View File

@ -46,7 +46,7 @@ if (GVAR(setting_AdvancedLevel) == -1) exitwith{};
GVAR(isEnabled) = true;
waituntil{!isnil "ACE_gui" && !isnil "ACE_common"};
waituntil{!isnil "ACE_common"};
if (GVAR(setting_AdvancedLevel) > 0) then {

View File

@ -21,7 +21,6 @@ private ["_logic","_setting","_objects", "_medicsLoadout", "_nonMedics", "_code"
_logic = [_this,0,objNull,[objNull]] call BIS_fnc_param;
if (!isNull _logic) then {
_setting = _logic getvariable ["equipment",0];
waituntil {!isnil "ACE_gui"}; // ensure the player unit is available.
waituntil {time>0};
_start = diag_tickTime;

View File

@ -23,4 +23,4 @@ if (primaryWeapon _caller == "ACE_FakePrimaryWeapon") then {
[_caller,false] call FUNC(treatmentMutex);
// TODO: BUG: if AI finishes treatment, it will also hide the icon for the player
[QGVAR(treatmentIconID), false, "", [1,1,1,1]] call EFUNC(gui,displayIcon);
[QGVAR(treatmentIconID), false, "", [1,1,1,1]] call EFUNC(common,displayIcon);

View File

@ -1 +1 @@
#include "\z\ace\addons\gui\UI\define.hpp"
#include "\z\ace\addons\common\define.hpp"

View File

@ -1,8 +1,8 @@
class GVAR(medicalMenu) {
idd = 314412;
movingEnable = true;
onLoad = QUOTE(uiNamespace setVariable [ARR_2(QUOTE(QGVAR(medicalMenu)), _this select 0)]; [ARR_2(QUOTE(QGVAR(id)), true)] call EFUNC(gui,blurScreen); [_this select 0] call FUNC(onMenuOpen););
onUnload = QUOTE([ARR_2(QUOTE(QGVAR(id)), false)] call EFUNC(gui,blurScreen); [ARR_2(QUOTE(QGVAR(onMenuOpen)), 'onEachFrame')] call BIS_fnc_removeStackedEventHandler;);
onLoad = QUOTE(uiNamespace setVariable [ARR_2(QUOTE(QGVAR(medicalMenu)), _this select 0)]; [ARR_2(QUOTE(QGVAR(id)), true)] call EFUNC(common,blurScreen); [_this select 0] call FUNC(onMenuOpen););
onUnload = QUOTE([ARR_2(QUOTE(QGVAR(id)), false)] call EFUNC(common,blurScreen); [ARR_2(QUOTE(QGVAR(onMenuOpen)), 'onEachFrame')] call BIS_fnc_removeStackedEventHandler;);
class controlsBackground {
class HeaderBackground: ACE_gui_backgroundBase{
idc = -1;