DayZ 1.27
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено
ChatInputMenu.c
См. документацию.
1class ChatInputMenu extends UIScriptedMenu
2{
6 private ref Timer m_close_timer;
7
9 {
10 m_close_timer = new Timer();
11 }
12
13 override Widget Init()
14 {
16 layoutRoot = GetGame().GetWorkspace().CreateWidgets("gui/layouts/day_z_chat_input.layout");
17 m_edit_box = EditBoxWidget.Cast(layoutRoot.FindAnyWidget("InputEditBoxWidget"));
18 m_channel_text = TextWidget.Cast(layoutRoot.FindAnyWidget("ChannelText"));
19
21 return layoutRoot;
22 }
23
24 override bool UseKeyboard()
25 {
26 return true;
27 }
28
29 override bool OnChange(Widget w, int x, int y, bool finished)
30 {
31 super.OnChange(w, x, y, finished);
32
33 if (!finished) return false;
34
35 string text = m_edit_box.GetText();
36
37 if (text != "")
38 {
39 GetGame().ChatPlayer(text);
40 if (!GetGame().IsMultiplayer())
41 {
42 string name;
44 ChatMessageEventParams chat_params = new ChatMessageEventParams(CCDirect, name, text, "");
45 MissionGameplay.Cast(GetGame().GetMission()).m_Chat.Add(chat_params);
46 }
47 }
48
49 m_close_timer.Run(0.1, this, "Close");
50
51 GetUApi().GetInputByID(UAPersonView).Supress();
52
53 return true;
54 }
55
56 override void OnShow()
57 {
59 }
60
61 override void OnHide()
62 {
63 super.OnHide();
65
66 if (!GetGame().GetMission().IsVoNActive())
68 }
69
70 override void Refresh()
71 {
72 }
73
74 override void Update(float timeslice)
75 {
76 if (m_BackInputWrapper.InputP().LocalPress())
77 {
78 Close();
79 }
80 }
81
83 {
84 m_channel_text.SetText(GetChannelName(/*GetGame().ChatGetChannel()*/0));
85 }
86
87 static string GetChannelName(ChatChannel channel)
88 {
89 switch (channel)
90 {
91 case CCSystem:
92 return "System";
93 case CCAdmin:
94 return "Admin";
95 case CCDirect:
96 return "Direct";
97 case CCMegaphone:
98 return "Megaphone";
99 case CCTransmitter:
100 return "Radio";
101 case CCPublicAddressSystem:
102 return "PAS";
103 }
104
105 return "";
106 }
107}
PlayerSpawnPresetDiscreteItemSetSlotData name
one set for cargo
Icon x
Icon y
void Close()
proto native UAInputAPI GetUApi()
proto native WorkspaceWidget GetWorkspace()
proto void GetPlayerName(out string name)
Gets current player name.
proto native void ChatPlayer(string text)
proto native Mission GetMission()
Определения EnWidgets.c:354
void HideChat()
Определения gameplay.c:812
void HideVoiceLevelWidgets()
Определения gameplay.c:815
Определения EnWidgets.c:220
Определения DayZPlayerImplement.c:63
Определения UAInput.c:15
proto native void Supress()
proto native UAIDWrapper GetPersistentWrapper()
proto native UAInput GetInputByID(int iID)
returns list of all bindable (i.e. visible) inputs from the active group ('core' by default)
override void OnShow()
Определения ChatInputMenu.c:56
override void Update(float timeslice)
Определения ChatInputMenu.c:74
TextWidget m_channel_text
Определения ChatInputMenu.c:4
UAIDWrapper m_BackInputWrapper
Определения ChatInputMenu.c:5
override void Refresh()
Определения ChatInputMenu.c:70
void UpdateChannel()
Определения ChatInputMenu.c:82
ref Timer m_close_timer
Определения ChatInputMenu.c:6
override void OnHide()
Определения ChatInputMenu.c:61
override bool OnChange(Widget w, int x, int y, bool finished)
Определения ChatInputMenu.c:29
void ChatInputMenu()
Определения ChatInputMenu.c:8
override bool UseKeyboard()
Определения ChatInputMenu.c:24
override Widget Init()
Определения ChatInputMenu.c:13
EditBoxWidget m_edit_box
Определения ChatInputMenu.c:3
static string GetChannelName(ChatChannel channel)
Определения ChatInputMenu.c:87
Определения DayZGame.c:64
Определения EnWidgets.c:190
int ChatChannel
Определения gameplay.c:400
Param4< int, string, string, string > ChatMessageEventParams
channel, from, text, color config class
Определения gameplay.c:407
proto native CGame GetGame()
proto native external Widget CreateWidgets(string layout, Widget parentWidget=NULL, bool immedUpdate=true)
Create widgets from *.layout file.
proto native void SetFocus(Widget w)