ACE3/addons/medical_menu/functions/fnc_onMenuOpen.sqf

78 lines
2.8 KiB
Plaintext
Raw Normal View History

/*
* Author: Glowbal
* Handle medical menu opened
2015-08-02 14:56:27 +00:00
*
* Arguments:
2015-08-07 03:37:41 +00:00
* 0: Medical Menu display <DISPLAY>
*
* Return Value:
2015-08-07 03:37:41 +00:00
* None
*
* Example:
* [medical_menu] call ace_medical_menu_onMenuOpen
*
* Public: No
2015-08-02 14:56:27 +00:00
*/
2015-08-07 03:37:41 +00:00
#include "script_component.hpp"
2015-08-02 14:56:27 +00:00
2015-08-07 03:37:41 +00:00
private "_target";
2015-08-07 03:37:41 +00:00
params ["_display"];
if (isNil "_display") exitwith {};
2015-08-02 14:56:27 +00:00
2015-08-07 03:37:41 +00:00
if (isNil QGVAR(LatestDisplayOptionMenu)) then {
2015-08-02 14:56:27 +00:00
GVAR(LatestDisplayOptionMenu) = "triage";
} else {
if (GVAR(LatestDisplayOptionMenu) == "toggle") then {
GVAR(LatestDisplayOptionMenu) = "triage";
GVAR(INTERACTION_TARGET) = GVAR(INTERACTION_TARGET_PREVIOUS);
};
};
_target = GVAR(INTERACTION_TARGET);
2015-08-07 03:37:41 +00:00
if (isNil QGVAR(INTERACTION_TARGET_PREVIOUS)) then {
2015-08-02 14:56:27 +00:00
GVAR(INTERACTION_TARGET_PREVIOUS) = _target;
};
[GVAR(LatestDisplayOptionMenu)] call FUNC(handleUI_DisplayOptions);
disableSerialization;
2015-08-07 03:37:41 +00:00
[_target, _display] call FUNC(updateUIInfo);
2015-08-02 14:56:27 +00:00
2015-08-07 03:37:41 +00:00
(_display displayCtrl 11) ctrlSetTooltip localize LSTRING(VIEW_TRIAGE_CARD);
(_display displayCtrl 12) ctrlSetTooltip localize LSTRING(EXAMINE_PATIENT);
(_display displayCtrl 13) ctrlSetTooltip localize LSTRING(BANDAGE_FRACTURES);
(_display displayCtrl 14) ctrlSetTooltip localize LSTRING(MEDICATION);
(_display displayCtrl 15) ctrlSetTooltip localize LSTRING(AIRWAY_MANAGEMENT);
(_display displayCtrl 16) ctrlSetTooltip localize LSTRING(ADVANCED_TREATMENT);
(_display displayCtrl 17) ctrlSetTooltip localize LSTRING(DRAG_CARRY);
(_display displayCtrl 18) ctrlSetTooltip localize LSTRING(TOGGLE_SELF);
2015-08-02 14:56:27 +00:00
2015-08-07 03:37:41 +00:00
(_display displayCtrl 301) ctrlSetTooltip localize LSTRING(SELECT_HEAD);
(_display displayCtrl 302) ctrlSetTooltip localize LSTRING(SELECT_TORSO);
(_display displayCtrl 303) ctrlSetTooltip localize LSTRING(SELECT_ARM_R);
(_display displayCtrl 304) ctrlSetTooltip localize LSTRING(SELECT_ARM_L);
(_display displayCtrl 305) ctrlSetTooltip localize LSTRING(SELECT_LEG_R);
(_display displayCtrl 306) ctrlSetTooltip localize LSTRING(SELECT_LEG_L);
(_display displayCtrl 2001) ctrlSetTooltip localize LSTRING(SELECT_TRIAGE_STATUS);
2015-08-02 14:56:27 +00:00
2015-08-07 03:37:41 +00:00
(_display displayCtrl 1) ctrlSetText format ["%1", [_target] call EFUNC(common,getName)];
setMousePosition [0.4, 0.4];
2015-08-02 14:56:27 +00:00
[QGVAR(onMenuOpen), "onEachFrame", {
2015-08-07 03:37:41 +00:00
params ["_display"];
2015-08-02 14:56:27 +00:00
if (isNull GVAR(INTERACTION_TARGET)) then {
GVAR(INTERACTION_TARGET) = ACE_player;
};
2015-08-07 03:37:41 +00:00
[GVAR(INTERACTION_TARGET), _display] call FUNC(updateUIInfo);
2015-08-02 14:56:27 +00:00
[GVAR(INTERACTION_TARGET)] call FUNC(updateIcons);
[GVAR(LatestDisplayOptionMenu)] call FUNC(handleUI_DisplayOptions);
_status = [GVAR(INTERACTION_TARGET)] call FUNC(getTriageStatus);
2015-08-07 03:37:41 +00:00
(_display displayCtrl 2000) ctrlSetText (_status select 0);
(_display displayCtrl 2000) ctrlSetBackgroundColor (_status select 2);
2015-08-02 14:56:27 +00:00
}, [_display]] call BIS_fnc_addStackedEventHandler;
2015-08-07 03:37:41 +00:00
["Medical_onMenuOpen", [ACE_player, _interactionTarget]] call EFUNC(common,localEvent);