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

◆ ShowActionMenu()

void ScriptedWidgetEventHandler::ShowActionMenu ( InventoryItem item)
inlineprotected

См. определение в файле LayoutHolder.c строка 41

42 {
43 PlayerBase m_player = PlayerBase.Cast( GetGame().GetPlayer() );
45 m_am_entity1 = item;
46 m_am_entity2 = null;
47 ContextMenu cmenu = ContextMenu.Cast(GetGame().GetUIManager().GetMenu().GetContextMenu());
48
49 cmenu.Hide();
50 cmenu.Clear();
51
52 if (m_am_entity1 == null)
53 return;
54
55 TSelectableActionInfoArrayEx customActions = new TSelectableActionInfoArrayEx();
56 ItemBase itemBase = ItemBase.Cast(item);
57 itemBase.GetDebugActions(customActions);
58
59 if (ItemBase.GetDebugActionsMask() & DebugActionType.PLAYER_AGENTS)
60 {
61 m_player.GetDebugActions(customActions);
62 }
63
64 int actionsCount = customActions.Count();
65 for (int i = 0; i < customActions.Count(); i++)
66 {
67 TSelectableActionInfoWithColor actionInfo = TSelectableActionInfoWithColor.Cast(customActions.Get(i));
68 if (actionInfo)
69 {
70 int actionId = actionInfo.param2;
71 int textColor = actionInfo.param4;
72 string actionText = actionInfo.param3;
73
74 if (actionId == EActions.SEPARATOR)
75 cmenu.AddEx(actionText, textColor, this, "", null);
76 else
77 cmenu.AddEx(actionText, textColor, this, "OnSelectActionEx", new Param3<EntityAI, int, int>(itemBase, actionId, textColor));
78 }
79 }
80
81 int actionMenuPosX, actionMenuPosY;
82 GetMousePos(actionMenuPosX, actionMenuPosY);
83 actionMenuPosX -= 5;
84 actionMenuPosY -= 5;
85 cmenu.Show(actionMenuPosX, actionMenuPosY);
86 }
Param4< int, int, string, int > TSelectableActionInfoWithColor
Определения EntityAI.c:97
EActions
Определения EActions.c:2
class GP5GasMask extends MaskBase ItemBase
override ContextMenu GetContextMenu()
Определения InventoryMenu.c:80
DebugActionType
Определения PluginDiagMenu.c:7
DayZPlayer m_player
Определения RandomGeneratorSyncManager.c:16
override void GetDebugActions(out TSelectableActionInfoArrayEx outputList)
Определения PowerGenerator.c:412
EntityAI m_am_entity2
Определения LayoutHolder.c:13
void HideOwnedTooltip()
Определения LayoutHolder.c:235
EntityAI m_am_entity1
Определения LayoutHolder.c:13
void ContextMenu()
Определения ContextMenu.c:15
proto native CGame GetGame()
proto void GetMousePos(out int x, out int y)

Перекрестные ссылки ContextMenu(), GetContextMenu(), ItemBase::GetDebugActions(), GetGame(), GetMousePos(), GetPlayer(), HideOwnedTooltip(), m_am_entity1, m_am_entity2 и m_player.