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

◆ MouseClick()

void AttachmentCategoriesRow::MouseClick ( Widget w,
int x,
int y,
int button )
inlineprotected

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

854 {
855 ItemBase selectedItem;
856 SlotsIcon icon;
857 w.GetUserData(icon);
858 if (icon)
859 selectedItem = ItemBase.Cast(icon.GetEntity());
860
861 if (selectedItem)
862 {
863 switch (button)
864 {
865 case MouseState.RIGHT:
866 #ifdef DIAG_DEVELOPER
867 if (g_Game.IsLeftCtrlDown())
868 ShowActionMenu(selectedItem);
869 #endif
870
871 if (CanSplitEx(selectedItem))
872 {
873 selectedItem.OnRightClick();
874 }
875
876 break;
877
878 case MouseState.MIDDLE:
879 InspectItem(selectedItem);
880 break;
881
882 case MouseState.LEFT:
883 PlayerBase controlledPlayer = PlayerBase.Cast(g_Game.GetPlayer());
884 if (g_Game.IsLeftCtrlDown())
885 {
886 if (icon.IsOutOfReach())
887 return;
888
889 if (controlledPlayer.CanDropEntity(selectedItem))
890 {
891 if (selectedItem.GetTargetQuantityMax() < selectedItem.GetQuantity())
892 selectedItem.SplitIntoStackMaxClient(null, -1);
893 else
894 controlledPlayer.PhysicalPredictiveDropItem(selectedItem);
895 }
896 else
897 {
898 bool draggable = !controlledPlayer.GetInventory().HasInventoryReservation(selectedItem, null) && !controlledPlayer.GetInventory().IsInventoryLocked() && selectedItem.GetInventory().CanRemoveEntity() && !controlledPlayer.IsItemsToDelete();
899 ItemManager.GetInstance().SetWidgetDraggable(w, draggable);
900 }
901 }
902 else
903 {
904 ClosableContainer c = ClosableContainer.Cast(icon.GetContainer());
905 if (c)
906 c.Toggle();
907 }
908
909 break;
910 }
911 }
912 }
DayZGame g_Game
Определения DayZGame.c:4074
class GP5GasMask extends MaskBase ItemBase
override bool InspectItem()
Определения ContainerWithCargo.c:184
Container GetContainer()
Определения SlotsIconBase.c:119
EntityAI GetEntity()
Определения SlotsIconBase.c:335
bool IsOutOfReach()
Определения SlotsIconBase.c:700
MouseState
Определения EnSystem.c:311

Перекрестные ссылки g_Game, SlotsIconBase::GetContainer(), SlotsIconBase::GetEntity(), ItemManager::GetInstance(), ClosableContainer::InspectItem(), SlotsIconBase::IsOutOfReach(), ItemManager::SetWidgetDraggable(), x и y.