69 protected void SetXboxIcon(
string name,
string imageset_name,
string image_name) {};
80 m_Root.FindAnyWidget(widget +
"_btn_icon_xbox").Show(show_xbox_icon);
81 m_Root.FindAnyWidget(widget +
"_btn_icon").Show(!show_xbox_icon);
99 #ifdef PLATFORM_CONSOLE
121 bool showConsoleIcons =
false;
122 #ifdef PLATFORM_CONSOLE
123 showConsoleIcons =
g_Game.GetInput().GetCurrentInputDevice() ==
EInputDeviceType.CONTROLLER || !
g_Game.GetInput().IsEnabledMouseAndKeyboardEvenOnServer();
136 int quantityType = 0;
139 float quantityCurrent = -1.0;
157 SetRadioFrequency(frequency,
"ia_item_subdesc",
"ia_item_subdesc_up",
"ia_item_subdesc_down", frequency.
Length() > 0);
169 SetInteractActionIcon(
"ia_interact",
"ia_interact_icon_frame",
"ia_interact_btn_inner_icon",
"ia_interact_btn_text");
172 SetInteractActionIcon(
"ia_continuous_interact",
"ia_continuous_interact_icon_frame",
"ia_continuous_interact_btn_inner_icon",
"ia_continuous_interact_btn_text");
186 if (
m_Hud.GetHudVisibility().IsContextFlagActive(IngameHudVisibility.HUD_HIDE_FLAGS))
279 if (action && action.GetText())
280 return action.GetText();
306 protected void GetItemQuantity(out
int q_type, out
float q_cur, out
int q_min, out
int q_max)
318 q_cur = (q_cur / q_max);
337 return trans.GetTunedFrequency().ToString();
348 widget =
m_Root.FindAnyWidget(itemWidget);
350 if (entity &&
m_Player && !
m_Player.GetItemAccessor().IsItemInHandsHidden())
354 Class.
CastTo(itemName, widget.FindAnyWidget(descWidget));
355 itemName.SetText(descText);
362 protected void SetItemHealth(
int health,
string itemWidget,
string healthWidget,
bool enabled)
366 widget =
m_Root.FindAnyWidget(itemWidget);
370 ImageWidget healthMark;
371 Class.
CastTo(healthMark, widget.FindAnyWidget(healthWidget));
376 healthMark.SetAlpha(0.5);
377 healthMark.GetParent().Show(
true);
384 healthMark.GetParent().Show(
false);
388 healthMark.SetAlpha(0.5);
389 healthMark.GetParent().Show(
true);
393 healthMark.SetAlpha(0.5);
394 healthMark.GetParent().Show(
true);
398 healthMark.SetAlpha(0.5);
399 healthMark.GetParent().Show(
true);
403 healthMark.SetAlpha(0.5);
404 healthMark.GetParent().Show(
true);
408 healthMark.SetAlpha(0.5);
409 healthMark.GetParent().Show(
true);
412 healthMark.SetColor(0x00FFFFFF);
413 healthMark.SetAlpha(0.5);
414 healthMark.GetParent().Show(
true);
425 protected void SetItemQuantity(
int type,
float current,
int min,
int max,
string itemWidget,
string quantityPBWidget,
string quantityTextWidget,
bool enabled)
429 widget =
m_Root.FindAnyWidget(itemWidget);
433 ProgressBarWidget progressBar;
435 Class.
CastTo(progressBar, widget.FindAnyWidget(quantityPBWidget));
436 Class.
CastTo(textWidget, widget.FindAnyWidget(quantityTextWidget));
442 progressBar.Show(
false);
443 textWidget.Show(
false);
444 textWidget.GetParent().Show(
false);
447 if (max > 1 || current > 1)
450 progressBar.Show(
false);
451 textWidget.SetText(qty_text);
452 textWidget.Show(
true);
453 textWidget.GetParent().Show(
true);
458 progressBar.Show(
false);
459 textWidget.Show(
false);
460 textWidget.GetParent().Show(
false);
464 textWidget.Show(
false);
465 progressBar.SetCurrent(current);
466 progressBar.Show(
true);
467 textWidget.GetParent().Show(
true);
476 protected void SetWeaponQuantity(
int chamber,
int mag,
string itemWidget,
string quantityPBWidget,
string quantityTextWidget,
bool enabled)
480 widget =
m_Root.FindAnyWidget(itemWidget);
486 ProgressBarWidget progressBar;
488 Class.
CastTo(progressBar, widget.FindAnyWidget(quantityPBWidget));
489 Class.
CastTo(textWidget, widget.FindAnyWidget(quantityTextWidget));
493 int mag_quantity = -1;
500 for (
int j = 0; j < wpn.GetMuzzleCount(); j++)
502 if (wpn.IsChamberFull(j)&& !wpn.IsChamberFiredOut(j))
509 for (
int i = 0; i < wpn.GetMuzzleCount(); i++)
511 if (i > 0 && (wpn.GetMuzzleCount() < 3 || i%2 == 0))
513 wpn_qty = wpn_qty +
" ";
515 if (wpn.IsChamberEmpty(i))
517 wpn_qty = wpn_qty +
"0";
519 else if (wpn.IsChamberFiredOut(i))
521 wpn_qty = wpn_qty +
"F";
525 wpn_qty = wpn_qty +
"1";
528 maga = wpn.GetMagazine(i);
531 mag_quantity = maga.GetAmmoCount();
533 else if (wpn.GetInternalMagazineMaxCartridgeCount(i) > 0)
535 mag_quantity = wpn.GetInternalMagazineCartridgeCount(i);
542 if (mag_quantity != -1)
543 wpn_qty =
string.
Format(
"X (+%1)", mag_quantity);
549 if (mag_quantity != -1)
551 wpn_qty = wpn_qty +
" (" + mag_quantity.
ToString() +
")";
557 progressBar.Show(
false);
558 textWidget.SetText(wpn_qty);
559 textWidget.Show(
true);
560 textWidget.GetParent().Show(
true);
570 widget =
m_Root.FindAnyWidget(itemWidget);
577 Class.
CastTo(txtModeWidget, widget.FindAnyWidget(upWidget));
578 Class.
CastTo(txtZeroingWidget, widget.FindAnyWidget(downWidget));
581 string zeroing =
string.Empty;
583 zeroing =
string.
Format(
"%1 m", w.GetCurrentZeroing(w.GetCurrentMuzzle()));
585 txtModeWidget.SetText(
m_Player.GetWeaponManager().GetCurrentModeName());
586 txtZeroingWidget.SetText(zeroing);
599 protected void SetRadioFrequency(
string freq,
string itemWidget,
string upWidget,
string downWidget,
bool enabled)
603 widget =
m_Root.FindAnyWidget(itemWidget);
609 Class.
CastTo(txtUpWidget, widget.FindAnyWidget(upWidget));
610 Class.
CastTo(txtDownWidget, widget.FindAnyWidget(downWidget));
612 txtUpWidget.SetText(freq);
613 txtDownWidget.SetText(
"MHz");
624 if (action && (!action.HasTarget() || (
m_Player &&
m_Player.GetCommand_Vehicle())))
627 Class.
CastTo(actionName, widget.FindAnyWidget(descWidget));
630 if (action.GetInput().GetInputType() ==
ActionInputType.AIT_CONTINUOUS)
632 descText = descText +
" " +
"#action_target_cursor_hold";
633 actionName.SetText(descText);
637 actionName.SetText(descText);
653 widget =
m_Root.FindAnyWidget(multiActionsWidget);
662 widget =
m_Root.FindAnyWidget(multiActionsWidget);
670 widget =
m_Root.FindAnyWidget(multiActionsWidget);
679 widget =
m_Root.FindAnyWidget(multiActionsWidget);
683 protected void SetInteractActionIcon(
string actionWidget,
string actionIconFrameWidget,
string actionIconWidget,
string actionIconTextWidget)
685 string keyName =
string.Empty;
686 Widget widget, frameWidget;
687 ImageWidget iconWidget;
690 widget =
m_Root.FindAnyWidget(actionWidget);
691 Class.
CastTo(frameWidget, widget.FindAnyWidget(actionIconFrameWidget));
692 Class.
CastTo(iconWidget, widget.FindAnyWidget(actionIconWidget));
693 Class.
CastTo(textWidget, widget.FindAnyWidget(actionIconTextWidget));
703 iconWidget.Show(
false);
704 textWidget.SetText(keyName);
705 textWidget.Show(
true);
714 w.Show(entity.IsRefresherSignalingViable() &&
m_Player.IsTargetInActiveRefresherRange(entity));
716 else if (w.IsVisible())
741 IngameHud hud = IngameHud.Cast(
mission.GetHud());
void ActionManagerBase(PlayerBase player)
PlayerSpawnPresetDiscreteItemSetSlotData name
one set for cargo
Super root of all classes in Enforce script.
const int COLOR_BADLY_DAMAGED
static float GetItemQuantity(InventoryItem item)
static int HasItemQuantity(notnull EntityAI item)
script counterpart to engine's class Weapon
proto string ToString(bool simple=true)
const int QUANTITY_PROGRESS
const int QUANTITY_HIDDEN
static proto bool CastTo(out Class to, Class from)
Try to safely down-cast base class to child class.
const int STATE_BADLY_DAMAGED
static proto float Round(float f)
Returns mathematical round of value.
proto native int Length()
Returns length of string.
static proto string ToString(void var, bool type=false, bool name=false, bool quotes=true)
Return string representation of variable.
proto int ToUpper()
Changes string to uppercase. Returns length.
static proto string Format(string fmt, void param1=NULL, void param2=NULL, void param3=NULL, void param4=NULL, void param5=NULL, void param6=NULL, void param7=NULL, void param8=NULL, void param9=NULL)
Gets n-th character from string.