139 if (entry.m_EntryRootW == w.GetParent())
140 clickedEntry = entry;
145 if (w.GetName() ==
"ButtonMin")
148 RunRPC(clickedEntry, buttonID);
151 else if (w.GetName() ==
"ButtonMax")
154 RunRPC(clickedEntry, buttonID);
157 else if (w.GetName() ==
"ButtonAdd")
160 RunRPC(clickedEntry, buttonID);
163 else if (w.GetName() ==
"ButtonSubtract")
166 RunRPC(clickedEntry, buttonID);
174 RunRPC(clickedEntry, buttonID);
182 RunRPC(clickedEntry, buttonID);
242 entry.m_EntryRootW =
GetGame().GetWorkspace().CreateWidgets(
"gui/layouts/debug/day_z_hud_debug_health.layout",
m_WgtPanel );
243 entry.m_EntryZoneW = TextWidget.Cast(entry.m_EntryRootW.FindAnyWidget(
"Name"));
245 if (data.m_ValueNorm == 1)
246 entry.m_HealthMode =
"Shock";
247 else if (data.m_ValueNorm == 2)
248 entry.m_HealthMode =
"Blood";
250 entry.m_HealthMode =
"Health";
252 entry.m_IsTitleEntry = data.m_State;
254 if (entry.m_IsTitleEntry)
256 entry.m_EntryZoneW.SetText(entry.m_HealthMode);
257 entry.m_EntryZoneW.SetColor(0xFFABABAB);
259 entry.m_EntryRootW.FindAnyWidget(
"Value").Show(
false);
260 entry.m_EntryRootW.FindAnyWidget(
"Value").Enable(
false);
261 entry.m_EntryRootW.FindAnyWidget(
"ButtonMin").Show(
false);
262 entry.m_EntryRootW.FindAnyWidget(
"ButtonMin").Enable(
false);
263 entry.m_EntryRootW.FindAnyWidget(
"ButtonMax").Show(
false);
264 entry.m_EntryRootW.FindAnyWidget(
"ButtonMax").Enable(
false);
265 entry.m_EntryRootW.FindAnyWidget(
"ButtonAdd").Show(
false);
266 entry.m_EntryRootW.FindAnyWidget(
"ButtonAdd").Enable(
false);
267 entry.m_EntryRootW.FindAnyWidget(
"ButtonSubtract").Show(
false);
268 entry.m_EntryRootW.FindAnyWidget(
"ButtonSubtract").Enable(
false);
272 entry.m_EntryZoneW.SetText(data.m_Name);
273 entry.m_Zone = data.m_Name;
274 entry.m_EntryValueW = TextWidget.Cast(entry.m_EntryRootW.FindAnyWidget(
"Value"));
286 float roundedHealth, zoneMax;
292 if (entry.m_IsTitleEntry)
295 if (entry.m_Zone ==
"Global")
298 zoneMax =
m_TargetEntity.GetMaxHealth(entry.m_Zone, entry.m_HealthMode);
300 roundedHealth =
Math.Round(value.m_Value * 100) * 0.01;
301 entry.m_EntryValueW.SetText(roundedHealth.ToString() +
"/" + zoneMax.ToString());
303 if (roundedHealth == zoneMax)
305 else if (roundedHealth < zoneMax * 0.3)