mirror of
https://github.com/acemod/ACE3.git
synced 2024-08-30 18:23:18 +00:00
Merge pull request #268 from KoffeinFlummi/142currentchannel
142: ace_common_fnc_currentChannel is no longer relyable
This commit is contained in:
commit
b43451dd2f
@ -109,10 +109,6 @@ class RscDisplayInventory {
|
||||
onLoad = QUOTE([ARR_4(""onLoad"",_this,""RscDisplayInventory"",'IGUI')] call compile preprocessfilelinenumbers ""A3\ui_f\scripts\initDisplay.sqf""; [ARR_2('inventoryDisplayLoaded', _this)] call FUNC(localEvent););
|
||||
};
|
||||
|
||||
class RscDisplayChannel {
|
||||
onLoad = QUOTE(_this call FUNC(onLoadRscDisplayChannel));
|
||||
};
|
||||
|
||||
// map
|
||||
class RscDisplayMainMap {
|
||||
onLoad = QUOTE([ARR_4(""onLoad"",_this,""RscDiary"",'GUI')] call (uinamespace getvariable 'BIS_fnc_initDisplay'); uiNamespace setVariable [ARR_2('ACE_dlgMap', _this select 0)]; [ARR_2('mapDisplayLoaded', [ARR_2(_this select 0, 'Ingame')])] call FUNC(localEvent););
|
||||
|
@ -126,7 +126,6 @@ PREP(numberToDigits);
|
||||
PREP(numberToDigitsString);
|
||||
PREP(numberToString);
|
||||
PREP(onAnswerRequest);
|
||||
PREP(onLoadRscDisplayChannel);
|
||||
PREP(owned);
|
||||
PREP(player);
|
||||
PREP(playerSide);
|
||||
|
@ -7,11 +7,20 @@
|
||||
* NONE.
|
||||
*
|
||||
* Return value:
|
||||
* The current channel. Can be "group", "side", "global", "command", "vehicle" or "direct" (String)
|
||||
* The current channel. Can be "group", "side", "global", "command", "vehicle", "direct" or "custom_X" (String)
|
||||
*/
|
||||
#include "script_component.hpp"
|
||||
|
||||
#define CHANNELS ["group", "side", "global", "command", "vehicle", "direct"]
|
||||
#define CHANNELS_LOCALIZED [localize "str_channel_group", localize "str_channel_side", localize "str_channel_global", localize "str_channel_command", localize "str_channel_vehicle", localize "str_channel_direct"]
|
||||
#define CHANNELS ["global", "side", "command", "group", "vehicle", "direct"]
|
||||
#define CHANNELS_LOCALIZED [localize "str_channel_global", localize "str_channel_side", localize "str_channel_command", localize "str_channel_group", localize "str_channel_vehicle", localize "str_channel_direct"]
|
||||
|
||||
CHANNELS select (CHANNELS_LOCALIZED find (uiNamespace getVariable [QGVAR(currentChannel), ""])) max 0
|
||||
private "_currentChannel";
|
||||
_currentChannel = currentChannel;
|
||||
|
||||
if (_currentChannel < count CHANNELS) then {
|
||||
_currentChannel = CHANNELS select _currentChannel;
|
||||
} else {
|
||||
_currentChannel = format ["custom_%1", _currentChannel - count CHANNELS - 1];
|
||||
};
|
||||
|
||||
_currentChannel
|
||||
|
@ -1,29 +0,0 @@
|
||||
/*
|
||||
* Author: Pabst Mirror, commy2
|
||||
* When the RscDisplayChannel is loaded, this will constantly uiNamespace variable ace_common_currentChannel
|
||||
* with the raw localized text of CA_Channel (IDC=101). Only runs while the display is open.
|
||||
*
|
||||
* Arguments:
|
||||
* 0: The RscDisplayChannel Display <DISPLAY>
|
||||
*
|
||||
* Return Value:
|
||||
* Nothing
|
||||
*
|
||||
* Example:
|
||||
* onLoad = QUOTE(_this call FUNC(onLoadRscDisplayChannel));
|
||||
*
|
||||
* Public: No
|
||||
*/
|
||||
#include "script_component.hpp"
|
||||
|
||||
uiNamespace setVariable [QGVAR(currentChannelControl), ((_this select 0) displayCtrl 101)];
|
||||
|
||||
["ACE_currentChannel", "onEachFrame", {
|
||||
if (isNull (uiNamespace getVariable [QGVAR(currentChannelControl), controlNull])) then {
|
||||
["ACE_currentChannel", "onEachFrame"] call BIS_fnc_removeStackedEventHandler;
|
||||
} else {
|
||||
private "_localizedChannelText";
|
||||
_localizedChannelText = ctrlText (uiNamespace getVariable [QGVAR(currentChannelControl), controlNull]);
|
||||
uiNamespace setVariable [QGVAR(currentChannel), _localizedChannelText];
|
||||
};
|
||||
}] call BIS_fnc_addStackedEventhandler;
|
Loading…
Reference in New Issue
Block a user