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

См. исходные тексты.

Структуры данных

class  DebugAgentData
 

Функции

void HudDebugWinCharAgents (Widget widget_root)
 
void ~HudDebugWinCharAgents ()
 
override int GetType ()
 
override void SetUpdate (bool state)
 
override void Update ()
 
override void Show ()
 
override void Hide ()
 
void SetAgents ()
 
bool OnClick (Widget w, int x, int y, int button)
 
void DebugGrowAgentsRequest (int agent_id, bool should_grow)
 
void DebugRemoveAgentsRequest ()
 
void AddAgent (string title, string value, int id, float temporaryResistance)
 
void ClearAgents ()
 
void FitWindow ()
 

Переменные

class DebugAgentData m_WgtAgents
 
ref array< ref Widgetm_AgentWidgets = new array<ref Widget>
 
ref map< Widget, ref DebugAgentDatam_AgentWidgetData = new map<Widget, ref DebugAgentData>
 
AutoHeightSpacer WgtModifiersContentPanelScript
 

Функции

◆ AddAgent()

void AddAgent ( string title,
string value,
int id,
float temporaryResistance )
private
190 {
191 Widget widget = GetGame().GetWorkspace().CreateWidgets("gui/layouts/debug/day_z_hud_debug_agent.layout", m_WgtAgents);
192 ButtonWidget btn = ButtonWidget.Cast( widget.FindAnyWidget( "TextAgentName" ) );
193 TextWidget countWidget = TextWidget.Cast(widget.FindAnyWidget("TextWidgetAgentCount"));
194 TextWidget tempResistanceWidget = TextWidget.Cast(widget.FindAnyWidget("TextWidgetAgentTempResistanceTime"));
195 Widget activateButton = widget.FindAnyWidget("ButtonAgentActivate");
196 Widget deactivateButton = widget.FindAnyWidget("ButtonAgentDeactivate");
197
198 countWidget.SetText(value);
199 btn.SetText(title);
200 if (temporaryResistance > 0.0)
201 tempResistanceWidget.SetText(string.Format("(R-%1s)", Math.Round(temporaryResistance).ToString()));
202 else
203 tempResistanceWidget.SetText("");
204
205 DebugAgentData data = new DebugAgentData("", id);
206 m_AgentWidgets.Insert(widget);
207 m_AgentWidgetData.Insert(btn, data);
212
214 }
ref map< Widget, ref DebugAgentData > m_AgentWidgetData
Definition HudDebugWinCharAgents.c:33
ref array< ref Widget > m_AgentWidgets
Definition HudDebugWinCharAgents.c:32
class DebugAgentData m_WgtAgents
AutoHeightSpacer WgtModifiersContentPanelScript
Definition HudDebugWinCharAgents.c:35
void Update()
Definition AutoHeightSpacer.c:11
Definition HudDebugWinCharAgents.c:2
Definition EnMath.c:7
Definition EntityAI.c:95
Definition EnWidgets.c:220
Definition EnWidgets.c:190
proto native CGame GetGame()
static proto float Round(float f)
Returns mathematical round of value.

Перекрестные ссылки GetGame(), m_AgentWidgetData, m_AgentWidgets, m_WgtAgents, Math::Round(), AutoHeightSpacer::Update() и WgtModifiersContentPanelScript.

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

◆ ClearAgents()

void ClearAgents ( )
private
217 {
218 m_AgentWidgetData.Clear();
219
220 for (int i = 0; i < m_AgentWidgets.Count(); i++)
221 {
222 delete m_AgentWidgets.Get(i);
223 }
224
225 m_AgentWidgets.Clear();
226 }

Перекрестные ссылки m_AgentWidgetData и m_AgentWidgets.

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

◆ DebugGrowAgentsRequest()

void DebugGrowAgentsRequest ( int agent_id,
bool should_grow )
private
171 {
172 if(!should_grow)//id is minus value to mark killing instead of growing
173 {
174 agent_id *= -1;
175 }
176
178 Man man = GetGame().GetPlayer();
179 man.RPCSingleParam(ERPCs.DEV_AGENT_GROW, p1, true, man.GetIdentity());
180 }
ERPCs
Definition ERPCs.c:2

Перекрестные ссылки GetGame().

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

◆ DebugRemoveAgentsRequest()

void DebugRemoveAgentsRequest ( )
private
183 {
184 ref Param1<bool> p1 = new Param1<bool>( false );
185 Man man = GetGame().GetPlayer();
186 man.RPCSingleParam(ERPCs.DEV_RPC_AGENT_RESET, p1, true, man.GetIdentity());
187 }

Перекрестные ссылки GetGame().

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

◆ FitWindow()

void FitWindow ( )
private
229 {
230 FitWindowByContent( TextListboxWidget.Cast(m_WgtAgents) );
231 }

Перекрестные ссылки HudDebugWinBase::FitWindowByContent() и m_WgtAgents.

◆ GetType()

override int GetType ( )
private
59 {
60 return HudDebug.HUD_WIN_CHAR_AGENTS;
61 }
void HudDebug()
Definition HudDebug.c:106

Перекрестные ссылки HudDebug().

◆ Hide()

override void Hide ( )
private
115 {
116 super.Hide();
117
118 //Print("Hide()");
119
120 SetUpdate( false );
121 }
override void SetUpdate(bool state)
Definition HudDebugWinCharAgents.c:66

Перекрестные ссылки HudDebugWinBase::SetUpdate().

◆ HudDebugWinCharAgents()

void HudDebugWinCharAgents ( Widget widget_root)
private
40 {
42 //m_WgtAgents = TextListboxWidget.Cast( m_WgtRoot.FindAnyWidget( "txl_CharAgents_Values" ) );
43 m_WgtAgents = m_WgtRoot.FindAnyWidget( "AgentList" );
44
45 //FitWindowByContent( m_WgtAgents );
46
48 }
Widget m_WgtRoot
Definition HudDebug.c:93

Перекрестные ссылки m_WgtAgents, m_WgtRoot и WgtModifiersContentPanelScript.

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

◆ OnClick()

bool OnClick ( Widget w,
int x,
int y,
int button )
private
147 {
149 if (w.GetName() == "ButtonAgentActivate")
150 {
151 data = m_AgentWidgetData.Get(w);
152 DebugGrowAgentsRequest(data.GetID(), true);
153 return true;
154 }
155 else if (w.GetName() == "ButtonAgentDeactivate")
156 {
157 data = m_AgentWidgetData.Get(w);
158 DebugGrowAgentsRequest(data.GetID(), false);
159 return true;
160 }
161 else if (w.GetName() == "ResetAgents")
162 {
164 return true;
165 }
166
167 return false;
168 }
void DebugGrowAgentsRequest(int agent_id, bool should_grow)
Definition HudDebugWinCharAgents.c:170
void DebugRemoveAgentsRequest()
Definition HudDebugWinCharAgents.c:182

Перекрестные ссылки DebugGrowAgentsRequest(), DebugRemoveAgentsRequest() и m_AgentWidgetData.

◆ SetAgents()

void SetAgents ( )
private
124 {
125 PluginDeveloperSync developer_sync = PluginDeveloperSync.Cast( GetPlugin( PluginDeveloperSync ) );
126
127 //clear window
128 ClearAgents();
129
130 //set agents
131 if ( developer_sync.m_PlayerAgentsSynced.Count() > 0 )
132 {
133 for ( int i = 0; i < developer_sync.m_PlayerAgentsSynced.Count(); i++ )
134 {
135 SyncedValueAgent syncedValue = SyncedValueAgent.Cast(developer_sync.m_PlayerAgentsSynced.Get(i));
136 AddAgent(
137 syncedValue.GetName(),
138 syncedValue.GetValue(),
139 syncedValue.GetID(),
140 syncedValue.GetTemporaryResistanceTime(),
141 );
142 }
143 }
144 }
void ClearAgents()
Definition HudDebugWinCharAgents.c:216
void AddAgent(string title, string value, int id, float temporaryResistance)
Definition HudDebugWinCharAgents.c:189
PluginBase GetPlugin(typename plugin_type)
Definition PluginManager.c:316
void SyncedValueAgent(string name, string value, int id, float temporaryResistance)
Definition SyncedValue.c:111

Перекрестные ссылки AddAgent(), ClearAgents(), GetPlugin() и SyncedValueAgent().

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

◆ SetUpdate()

override void SetUpdate ( bool state)
private
67 {
68 //Disable update on server (PluginDeveloperSync)
70 PluginDeveloperSync developer_sync = PluginDeveloperSync.Cast( GetPlugin( PluginDeveloperSync ) );
71
72 //if client, send RPC
73 if ( GetGame().IsClient() )
74 {
76 if ( player )
77 {
78 player.RPCSingleParam( ERPCs.DEV_AGENTS_UPDATE, params, true );
79 SetRPCSent();
80 }
81 }
82 //else set directly
83 else
84 {
85 if ( developer_sync )
86 {
87 developer_sync.EnableUpdate( state, ERPCs.DEV_AGENTS_UPDATE, player );
88 }
89 }
90 }
PlayerBase GetPlayer()
Definition ModifierBase.c:51
Definition PlayerBaseClient.c:2

Перекрестные ссылки GetGame(), GetPlayer(), GetPlugin() и HudDebugWinBase::SetRPCSent().

◆ Show()

override void Show ( )
private
106 {
107 super.Show();
108
109 //Print("Show()");
110
111 SetUpdate( true );
112 }

Перекрестные ссылки HudDebugWinBase::SetUpdate().

◆ ~HudDebugWinCharAgents()

51 {
52 SetUpdate( false );
53 }

Перекрестные ссылки HudDebugWinBase::SetUpdate().

Переменные

◆ m_AgentWidgetData

ref map<Widget, ref DebugAgentData> m_AgentWidgetData = new map<Widget, ref DebugAgentData>
protected

Используется в AddAgent(), ClearAgents() и OnClick().

◆ m_AgentWidgets

ref array<ref Widget> m_AgentWidgets = new array<ref Widget>
protected

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

◆ m_WgtAgents

class DebugAgentData m_WgtAgents

Используется в AddAgent(), FitWindow() и HudDebugWinCharAgents().

◆ WgtModifiersContentPanelScript

AutoHeightSpacer WgtModifiersContentPanelScript
private

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