DayZ 1.26
DayZ Explorer by KGB
Загрузка...
Поиск...
Не найдено
Класс ActionMenu

Закрытые члены

void ActionMenu ()
 
void Init (Widget actions_panel_widget, TextWidget default_action_widget)
 
void UpdateWidgets ()
 
void NextAction ()
 
void PrevAction ()
 
void NextActionCategory ()
 
void PrevActionCategory ()
 
void Show ()
 
void Refresh ()
 
void Hide ()
 
void HideWithFadeout ()
 

Закрытые данные

const float FADE_IN_TIME = 0.3
 
const float FADE_OUT_TIME = 0.3
 
const float HIDE_MENU_TIME = 5
 
ref WidgetFadeTimer m_FadeTimer
 
ref array< TextWidgetm_actionItems
 
TextWidget m_defaultActionWidget
 
Widget m_actionsPanelWidget
 
ref Timer m_hide_timer
 
bool m_visible
 

Подробное описание

Конструктор(ы)

◆ ActionMenu()

void ActionMenu ( )
inlineprivate
16 {
18 m_FadeTimer = new WidgetFadeTimer;
20 m_visible = false;
21 }
ref array< TextWidget > m_actionItems
Definition ActionMenu.c:8
ref WidgetFadeTimer m_FadeTimer
Definition ActionMenu.c:7
ref Timer m_hide_timer
Definition ActionMenu.c:11
bool m_visible
Definition ActionMenu.c:13
Definition EntityAI.c:95
Definition DayZPlayerImplement.c:63
const int CALL_CATEGORY_GUI
Definition tools.c:9

Перекрестные ссылки CALL_CATEGORY_GUI, m_actionItems, m_FadeTimer, m_hide_timer и m_visible.

Методы

◆ Hide()

void Hide ( )
inlineprivate
162 {
163 if( !m_visible )
164 return;
165
166 m_visible = false;
167 m_hide_timer.Stop();
168 m_FadeTimer.Stop();
169 //m_defaultActionWidget.Show(false);
170 m_actionsPanelWidget.Show(false);
171 }
Widget m_actionsPanelWidget
Definition ActionMenu.c:10

Перекрестные ссылки m_actionsPanelWidget, m_FadeTimer, m_hide_timer и m_visible.

◆ HideWithFadeout()

void HideWithFadeout ( )
inlineprivate
174 {
175 //m_defaultActionWidget.Show(false);
176 if (m_actionsPanelWidget.IsVisible())
178 }
const float FADE_OUT_TIME
Definition ActionMenu.c:4

Перекрестные ссылки FADE_OUT_TIME, m_actionsPanelWidget и m_FadeTimer.

◆ Init()

void Init ( Widget actions_panel_widget,
TextWidget default_action_widget )
inlineprivate
24 {
27 m_actionItems.Clear();
28 int i = 0;
29 TextWidget w = TextWidget.Cast( m_actionsPanelWidget.FindAnyWidget("ActionListItem" + i.ToString()) );
30
31 while (w)
32 {
33 m_actionItems.Insert(w);
34 w.Show(false);
35 i++;
36 w = TextWidget.Cast( m_actionsPanelWidget.FindAnyWidget("ActionListItem" + i.ToString()) );
37 }
38
39 m_defaultActionWidget.Show(false);
40 m_actionsPanelWidget.Show(true);
41 m_actionsPanelWidget.SetAlpha(0);
42 }
TextWidget m_defaultActionWidget
Definition ActionMenu.c:9
Definition EnWidgets.c:220

Перекрестные ссылки m_actionItems, m_actionsPanelWidget и m_defaultActionWidget.

◆ NextAction()

void NextAction ( )
inlineprivate
103 {
105 player.GetActionManager().SelectNextAction();
106
108
109 m_hide_timer.Run(HIDE_MENU_TIME, this, "HideWithFadeout");
110 }
PlayerBase GetPlayer()
Definition ModifierBase.c:51
void UpdateWidgets()
Definition ActionMenu.c:44
const float HIDE_MENU_TIME
Definition ActionMenu.c:5
Definition PlayerBaseClient.c:2
proto native CGame GetGame()

Перекрестные ссылки GetGame(), GetPlayer(), HIDE_MENU_TIME, m_hide_timer и UpdateWidgets().

◆ NextActionCategory()

void NextActionCategory ( )
inlineprivate
123 {
125 player.GetActionManager().SelectNextActionCategory();
126
128
129 m_hide_timer.Run(HIDE_MENU_TIME, this, "HideWithFadeout");
130 }

Перекрестные ссылки GetGame(), GetPlayer(), HIDE_MENU_TIME, m_hide_timer и UpdateWidgets().

◆ PrevAction()

void PrevAction ( )
inlineprivate
113 {
115 player.GetActionManager().SelectPrevAction();
116
118
119 m_hide_timer.Run(HIDE_MENU_TIME, this, "HideWithFadeout");
120 }

Перекрестные ссылки GetGame(), GetPlayer(), HIDE_MENU_TIME, m_hide_timer и UpdateWidgets().

◆ PrevActionCategory()

void PrevActionCategory ( )
inlineprivate
133 {
135 player.GetActionManager().SelectPrevActionCategory();
136
138
139 m_hide_timer.Run(HIDE_MENU_TIME, this, "HideWithFadeout");
140 }

Перекрестные ссылки GetGame(), GetPlayer(), HIDE_MENU_TIME, m_hide_timer и UpdateWidgets().

◆ Refresh()

void Refresh ( )
inlineprivate
152 {
153 if( !m_visible )
154 Show();
155
157 if( player.GetActionManager().IsSelectableActionsChanged() )
159 }
void Show()
Definition ActionMenu.c:142

Перекрестные ссылки GetGame(), GetPlayer(), m_visible, Show() и UpdateWidgets().

◆ Show()

void Show ( )
inlineprivate
143 {
144 if( m_visible )
145 return;
146
147 m_visible = true;
148 m_hide_timer.Run(HIDE_MENU_TIME, this, "HideWithFadeout");
149 }

Перекрестные ссылки HIDE_MENU_TIME, m_hide_timer и m_visible.

Используется в Refresh().

◆ UpdateWidgets()

void UpdateWidgets ( )
inlineprivate
45 {
46#ifdef DIAG_DEVELOPER
47 // tmp
48 bool newATSelection = DiagMenu.GetBool( DiagMenuIDs.MISC_ACTION_TARGETS_NEW, true );
49
50 // read the action manager
52 TSelectableActionInfoArray actions = player.GetActionManager().GetSelectableActions();
53 int selectedActionIndex = player.GetActionManager().GetSelectedActionIndex();
54
55 // clear state
56 m_defaultActionWidget.Show(false);
57 if ( actions.Count() <= 1 )
59 else
61
62 // update state
63 for (int i = 0; i < m_actionItems.Count(); i++)
64 {
66
67 if (i < actions.Count())
68 {
70 w.SetText(actionInfo.param3);
71
73 {
74 w.SetColor(0xFFFFEC44);
75
76 m_defaultActionWidget.SetText(actionInfo.param3);
77 if ( !newATSelection )
78 {
79 m_defaultActionWidget.Show(true);
80 }
81 }
82 else
83 {
84 w.SetColor(0xFFFFFFFF);
85 }
86
87 w.Show(true);
88 }
89 else
90 {
91 w.Show(false);
92 }
93 }
94
95 float sx;
96 float sy;
97 m_actionsPanelWidget.GetSize(sx, sy);
98 m_actionsPanelWidget.SetSize(sx, 8 + (actions.Count() * 32));
99#endif
100 }
DiagMenuIDs
Definition EDiagMenuIDs.c:2
const float FADE_IN_TIME
Definition ActionMenu.c:3
Definition EnDebug.c:233
static proto bool GetBool(int id, bool reverse=false)
Get value as bool from the given script id.

Перекрестные ссылки FADE_IN_TIME, FADE_OUT_TIME, DiagMenu::GetBool(), GetGame(), GetPlayer(), m_actionItems, m_actionsPanelWidget, m_defaultActionWidget и m_FadeTimer.

Используется в NextAction(), NextActionCategory(), PrevAction(), PrevActionCategory() и Refresh().

Поля

◆ FADE_IN_TIME

const float FADE_IN_TIME = 0.3
private

Используется в UpdateWidgets().

◆ FADE_OUT_TIME

const float FADE_OUT_TIME = 0.3
private

Используется в HideWithFadeout() и UpdateWidgets().

◆ HIDE_MENU_TIME

const float HIDE_MENU_TIME = 5
private

◆ m_actionItems

ref array<TextWidget> m_actionItems
private

Используется в ActionMenu(), Init() и UpdateWidgets().

◆ m_actionsPanelWidget

Widget m_actionsPanelWidget
private

Используется в Hide(), HideWithFadeout(), Init() и UpdateWidgets().

◆ m_defaultActionWidget

TextWidget m_defaultActionWidget
private

Используется в Init() и UpdateWidgets().

◆ m_FadeTimer

ref WidgetFadeTimer m_FadeTimer
private

Используется в ActionMenu(), Hide(), HideWithFadeout() и UpdateWidgets().

◆ m_hide_timer

ref Timer m_hide_timer
private

◆ m_visible

bool m_visible
private

Используется в ActionMenu(), Hide(), Refresh() и Show().


Объявления и описания членов класса находятся в файле: