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

◆ OnDropReceivedFromHeader()

override void VicinityContainer::OnDropReceivedFromHeader ( Widget w,
int x,
int y,
Widget receiver )
inlineprotected

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

291 {
292 if (!w)
293 return;
294
295 ItemManager.GetInstance().HideDropzones();
296 ItemManager.GetInstance().SetIsDragging(false);
297
298 ItemPreviewWidget ipw = ItemPreviewWidget.Cast(w.FindAnyWidget("Render"));
299
300 if (!ipw)
301 {
302 string name = w.GetName();
303 name.Replace("PanelWidget", "Render");
304 ipw = ItemPreviewWidget.Cast(w.FindAnyWidget(name));
305 }
306
307 if (!ipw)
308 {
309 ipw = ItemPreviewWidget.Cast(w);
310 if (!ipw)
311 return;
312 }
313
314 EntityAI item = ipw.GetItem();
315 if (!ipw.IsInherited(ItemPreviewWidget) || !item)
316 return;
317
318 if (!item.GetInventory().CanRemoveEntity() || m_ShowedItemIcons.Find(item) > -1)
319 return;
320
321 PlayerBase player = PlayerBase.Cast(g_Game.GetPlayer());
322 if (player.CanDropEntity(item))
323 {
324 ItemBase itemBase = ItemBase.Cast(item);
325 if (itemBase)
326 {
327 if (itemBase.GetTargetQuantityMax() < itemBase.GetQuantity())
328 itemBase.SplitIntoStackMaxClient(null, -1);
329 else
330 player.PhysicalPredictiveDropItem(itemBase);
331 }
332 }
333
334 InventoryMenu menu = InventoryMenu.Cast( g_Game.GetUIManager().FindMenu( MENU_INVENTORY ) );
335 if ( menu )
336 {
337 menu.RefreshQuickbar();
338 }
339 }
class LogManager EntityAI
PlayerSpawnPresetDiscreteItemSetSlotData name
one set for cargo
DayZGame g_Game
Определения DayZGame.c:3942
class GP5GasMask extends MaskBase ItemBase
void InventoryMenu()
Определения InventoryMenu.c:20
proto native EntityAI GetItem()
ref array< EntityAI > m_ShowedItemIcons
Определения VicinityContainer.c:6
const int MENU_INVENTORY
Определения 3_Game/DayZ/constants.c:180

Перекрестные ссылки g_Game, ItemManager::GetInstance(), ItemPreviewWidget::GetItem(), ItemManager::HideDropzones(), InventoryMenu(), m_ShowedItemIcons, MENU_INVENTORY, name, ItemManager::SetIsDragging(), x и y.

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