Dayz Explorer  1.24.157551 (v105080)
Dayz Code Explorer by Zeroy
vicinitycontainer.c
Go to the documentation of this file.
2 {
3  ref VicinitySlotsContainer m_VicinityIconsContainer;
5  ref map<int, ref Container> m_ShowedItemsIDs = new ref map<int, ref Container>;
6  ref array<EntityAI> m_ShowedItemIcons = new array<EntityAI>;
8  protected bool m_IsProcessing = false; // Prevents refreshing every time a child is added while it is still processing
9 
10  const float DISTANCE_TO_ENTITIES = 1.0;
11  const float DISTANCE_TO_THE_REST = 0.5;
12 
13  void VicinityContainer( LayoutHolder parent, int sort = -1 )
14  {
15  m_VicinityIconsContainer = new VicinitySlotsContainer( this );
16  m_Body.Insert( m_VicinityIconsContainer );
17  m_VicinityIconsContainer.GetRootWidget().SetColor(166 << 24 | 120 << 16 | 120 << 8 | 120);
18  m_MainWidget = m_RootWidget.FindAnyWidget( "body" );
19  WidgetEventHandler.GetInstance().RegisterOnChildAdd( m_MainWidget, this, "OnChildAdd" );
20  WidgetEventHandler.GetInstance().RegisterOnChildRemove( m_MainWidget, this, "OnChildRemove" );
21 
22  RecomputeOpenedContainers();
23  m_CollapsibleHeader.SetName("#container_vicinity");
24  LoadDefaultState();
25  }
26 
27  bool IsVicinityContainerIconsActive()
28  {
29  return m_VicinityIconsContainer.IsActive();
30  }
31 
32  VicinitySlotsContainer GetVicinityIconsContainer()
33  {
34  return m_VicinityIconsContainer;
35  }
36 
37  bool IsContainerWithCargoActive()
38  {
39  return ( ContainerWithCargo.Cast( GetFocusedContainer() ) != null );
40  }
41 
42  bool IsItemWithAttachmentsActive()
43  {
44  return ( ContainerWithCargoAndAttachments.Cast( GetFocusedContainer() ) != null );
45  }
46 
47  bool IsItemWithCategoriesActive()
48  {
49  return ( AttachmentCategoriesContainer.Cast( GetFocusedContainer() ) != null );
50  }
51 
52  void TraverseShowedItems()
53  {
54  map<string, bool> serialized_types = new map<string, bool>();
55  for ( int i = 0; i < m_ShowedItems.Count(); i++ )
56  {
57  EntityAI entity = m_ShowedItems.GetKey( i );
58  Container container = m_ShowedItems.GetElement( i );
59  string type = entity.GetType();
60  if ( container.IsInherited( ContainerWithCargo ) )
61  {
62  if ( !serialized_types.Contains( type ) )
63  {
64  ContainerWithCargo item_with_cargo = ContainerWithCargo.Cast( container );
65  serialized_types.Insert( type, item_with_cargo.IsOpened() );
66  }
67  }
68  }
69 
70  if ( serialized_types.Count() > 0 )
71  {
72  FileSerializer file = new FileSerializer();
73  if ( file.Open( "inventory_state.save", FileMode.APPEND ) )
74  {
75  file.Write( serialized_types.Count() );
76 
77  for ( i = 0; i < serialized_types.Count(); i++ )
78  {
79  file.Write( serialized_types.GetKey( i ) );
80  file.Write( serialized_types.GetElement( i ) );
81  }
82  }
83  file.Close();
84  }
85  }
86 
87  override void DraggingOverHeader( Widget w, int x, int y, Widget receiver )
88  {
89  if ( w == null )
90  {
91  return;
92  }
93 
94  ItemPreviewWidget ipw = ItemPreviewWidget.Cast( w.FindAnyWidget( "Render" ) );
95  if ( !ipw )
96  {
97  string name = w.GetName();
98  name.Replace( "PanelWidget", "Render" );
99  ipw = ItemPreviewWidget.Cast( w.FindAnyWidget( name ) );
100  }
101 
102  if ( !ipw && ItemPreviewWidget.Cast( w ) )
103  {
104  ipw = ItemPreviewWidget.Cast( w );
105  }
106 
107  if ( !ipw || !ipw.GetItem() )
108  {
109  return;
110  }
111 
112  if ( ipw.GetItem() && GetGame().GetPlayer().CanDropEntity( ipw.GetItem() ) && ipw.GetItem().GetInventory().CanRemoveEntity() && m_ShowedItemIcons.Find( ipw.GetItem() ) == -1 )
113  {
114  ColorManager.GetInstance().SetColor( w, ColorManager.GREEN_COLOR );
115  ItemManager.GetInstance().HideDropzones();
116  ItemManager.GetInstance().GetLeftDropzone().SetAlpha( 1 );
117  }
118  else
119  {
120  ColorManager.GetInstance().SetColor( w, ColorManager.RED_COLOR );
121  ItemManager.GetInstance().ShowSourceDropzone( ipw.GetItem() );
122  }
123  }
124 
125  void DraggingOverIcon( Widget w, int x, int y, Widget receiver )
126  {
127  string name = receiver.GetName();
128  name.Replace("PanelWidget", "Render");
129  ItemPreviewWidget receiver_iw = ItemPreviewWidget.Cast( receiver.FindAnyWidget(name) );
130  EntityAI receiver_item = receiver_iw.GetItem();
131 
132  ItemPreviewWidget ipw = ItemPreviewWidget.Cast( w.FindAnyWidget( "Render" ) );
133  if ( !ipw )
134  {
135  name = w.GetName();
136  name.Replace( "PanelWidget", "Render" );
137  ipw = ItemPreviewWidget.Cast( w.FindAnyWidget( name ) );
138  }
139 
140  if ( !ipw && ItemPreviewWidget.Cast( w ) )
141  {
142  ipw = ItemPreviewWidget.Cast( w );
143  }
144 
145  if (!ipw)
146  {
147  return;
148  }
149 
150  if ( !ItemBase.Cast( receiver_item ) || !ipw.GetItem() )
151  {
152  return;
153  }
154 
155  if ( ipw.GetItem().GetInventory().CanRemoveEntity() || m_ShowedItemIcons.Find( ipw.GetItem() ) > -1 )
156  {
157  if ( ( ItemBase.Cast( receiver_item ) ).CanBeCombined( ItemBase.Cast( ipw.GetItem() ) ) )
158  {
159  ColorManager.GetInstance().SetColor( w, ColorManager.COMBINE_COLOR );
160  ItemManager.GetInstance().HideDropzones();
161  ItemManager.GetInstance().GetLeftDropzone().SetAlpha( 1 );
162  return;
163  }
164  else if ( GameInventory.CanSwapEntitiesEx( receiver_item, ipw.GetItem() ) )
165  {
166  ColorManager.GetInstance().SetColor( w, ColorManager.SWAP_COLOR );
167  ItemManager.GetInstance().HideDropzones();
168  ItemManager.GetInstance().GetLeftDropzone().SetAlpha( 1 );
169  return;
170  }
171  /*else if( GetGame().GetPlayer().CanDropEntity( ipw.GetItem() ) )
172  {
173  ColorManager.GetInstance().SetColor( w, ColorManager.GREEN_COLOR );
174  ItemManager.GetInstance().HideDropzones();
175  ItemManager.GetInstance().GetLeftDropzone().SetAlpha( 1 );
176  return;
177  }*/
178  }
179 
180  ColorManager.GetInstance().SetColor( w, ColorManager.RED_COLOR );
181  ItemManager.GetInstance().ShowSourceDropzone( ipw.GetItem() );
182  }
183 
184  void OnDropReceivedFromIcon( Widget w, int x, int y, Widget receiver )
185  {
186  string name = receiver.GetName();
187  name.Replace("PanelWidget", "Render");
188  ItemPreviewWidget receiver_iw = ItemPreviewWidget.Cast( receiver.FindAnyWidget(name) );
189  EntityAI receiver_item = receiver_iw.GetItem();
190 
191  ItemPreviewWidget ipw = ItemPreviewWidget.Cast( w.FindAnyWidget( "Render" ) );
192  if ( !ipw )
193  {
194  name = w.GetName();
195  name.Replace( "PanelWidget", "Render" );
196  ipw = ItemPreviewWidget.Cast( w.FindAnyWidget( name ) );
197  }
198 
199  if ( !ItemBase.Cast( receiver_item ) || !ipw.GetItem() )
200  {
201  return;
202  }
203 
204  EntityAI item = ipw.GetItem();
205  bool equal_typed = item.GetType() == receiver_item.GetType();
206  if ( !receiver_item.IsInherited( ItemBase ) || item == null )
207  {
208  return;
209  }
210 
211  PlayerBase player = PlayerBase.Cast( GetGame().GetPlayer() );
212 
213  if ( !item.GetInventory().CanRemoveEntity() )
214  return;
215 
216  if ( ( ItemBase.Cast( receiver_item ) ).CanBeCombined( ItemBase.Cast( item ) ) )
217  {
218  ( ItemBase.Cast( receiver_item ) ).CombineItemsClient( ItemBase.Cast( item ) );
219  }
220  else if( GameInventory.CanSwapEntitiesEx( receiver_item, item ) )
221  {
224  receiver_item.GetInventory().GetCurrentInventoryLocation( il1 );
225  item.GetInventory().GetCurrentInventoryLocation( il2 );
226 
227  if( !receiver_item.GetInventory().CanRemoveEntity() || ( il1.GetType() == InventoryLocationType.GROUND && il2.GetType() == InventoryLocationType.GROUND ) )
228  return;
229  player.PredictiveSwapEntities( item, receiver_item );
230  }
231 
232  ItemManager.GetInstance().HideDropzones();
233  ItemManager.GetInstance().SetIsDragging( false );
234  PrepareOwnedTooltip(item);
235 
236  InventoryMenu menu = InventoryMenu.Cast( GetGame().GetUIManager().FindMenu( MENU_INVENTORY ) );
237  if ( menu )
238  {
239  menu.RefreshQuickbar();
240  }
241  }
242 
243  void OnLeftPanelDropReceived( Widget w, int x, int y, Widget receiver )
244  {
245  OnDropReceivedFromHeader( w, x, y, receiver );
246  }
247 
248  void OnDropReceivedFromEmptySpace( Widget w, int x, int y, Widget receiver )
249  {
250  OnDropReceivedFromHeader( w, x, y, receiver );
251  }
252 
253  override void OnDropReceivedFromHeader(Widget w, int x, int y, Widget receiver)
254  {
255  if (!w)
256  return;
257 
258  ItemManager.GetInstance().HideDropzones();
259  ItemManager.GetInstance().SetIsDragging(false);
260 
261  ItemPreviewWidget ipw = ItemPreviewWidget.Cast(w.FindAnyWidget("Render"));
262 
263  if (!ipw)
264  {
265  string name = w.GetName();
266  name.Replace("PanelWidget", "Render");
267  ipw = ItemPreviewWidget.Cast(w.FindAnyWidget(name));
268  }
269 
270  if (!ipw)
271  {
272  ipw = ItemPreviewWidget.Cast(w);
273  if (!ipw)
274  return;
275  }
276 
277  EntityAI item = ipw.GetItem();
278  if (!ipw.IsInherited(ItemPreviewWidget) || !item)
279  return;
280 
281  if (!item.GetInventory().CanRemoveEntity() || m_ShowedItemIcons.Find(item) > -1)
282  return;
283 
284  PlayerBase player = PlayerBase.Cast(GetGame().GetPlayer());
285  if (player.CanDropEntity(item))
286  {
287  ItemBase itemBase = ItemBase.Cast(item);
288  if (itemBase)
289  {
290  if (itemBase.GetTargetQuantityMax() < itemBase.GetQuantity())
291  itemBase.SplitIntoStackMaxClient(null, -1);
292  else
293  player.PhysicalPredictiveDropItem(itemBase);
294  }
295  }
296 
297  InventoryMenu menu = InventoryMenu.Cast( GetGame().GetUIManager().FindMenu( MENU_INVENTORY ) );
298  if ( menu )
299  {
300  menu.RefreshQuickbar();
301  }
302  }
303 
304  override void UpdateInterval()
305  {
306  PlayerBase player = PlayerBase.Cast( GetGame().GetPlayer() );
307 
308  if (!player)
309  return;
310 
311  super.UpdateInterval();
312 
313  EntityAI eai;
314  vector pos = player.GetPosition();
315  ref array<EntityAI> objects;
316 
317  VicinityItemManager.GetInstance().Update( player.GetDeltaT() );
318  objects = VicinityItemManager.GetInstance().GetVicinityItems();
319 
320  //GetItemsShowableInInventory
321  array<EntityAI> showable_items = new array<EntityAI>;
322  int m_OldShowedItemIconsCount = m_ShowedItemIcons.Count();
323  m_ShowedItemIcons.Clear();
324 
325  GameInventory game_inventory = player.GetInventory();
326  for ( int i = 0; i < objects.Count(); i++ )
327  {
328  eai = objects.Get( i );
329  if ( eai == null || game_inventory.IsPlaceholderEntity( eai ) )
330  continue; // noproxy: ignore body placeholder
331 
332  BaseBuildingBase base_building = BaseBuildingBase.Cast(eai);
333  if (base_building && !base_building.IsPlayerInside(player,""))
334  continue;
335 
336  if ( eai.IsInventoryVisible() )
337  {
338  showable_items.Insert( eai );
339 
340  if ( !eai.IsInherited( DayZInfected ) && !eai.IsInherited( PlayerBase ) && !eai.IsInherited( AnimalBase ) && !eai.DisableVicinityIcon() )
341  {
342  m_ShowedItemIcons.Insert( eai );
343  }
344  }
345  }
346 
347 
348  //MW HOTFIX - old containers must be removed before new one are added (part of initialize are refreshed whole structure - need proper fix to avoid it)
349  ref map<EntityAI, ref Container> new_showed_items = new ref map<EntityAI, ref Container>;
350  Container con;
351 
352  for ( i = 0; i < showable_items.Count(); i++ )
353  {
354  new_showed_items.Insert(showable_items[i],null);
355  }
356 
357 
358  bool need_update_focus = false;
359  for ( i = 0; i < m_ShowedItems.Count(); i++ )
360  {
361  EntityAI ent = m_ShowedItems.GetKey( i );
362  m_ShowedItems.GetElement( i ).UpdateInterval();
363  con = m_ShowedItems.GetElement( i );
364  if ( !new_showed_items.Contains( ent ) )
365  {
366  GetMainWidget().Update();
367  if ( con.IsActive() )
368  need_update_focus = true;
369  Container.Cast( GetParent() ).Remove( con );
370  Remove( con );
371  }
372  else
373  {
374  UpdateHeader(ent,con,player); //squeezed here, the map is iterated over enough already..
375  }
376  }
378 
379  bool accessInventory = PlayerBase.DEBUG_INVENTORY_ACCESS;
380  accessInventory |= FreeDebugCamera.GetInstance() && FreeDebugCamera.GetInstance().IsActive();
381 
382 
383  //ref map<EntityAI, ref Container> new_showed_items = new ref map<EntityAI, ref Container>;
384  new_showed_items.Clear();
385  ref map<int, ref Container> showed_items_IDs = new ref map<int, ref Container>;
386  for ( i = 0; i < showable_items.Count(); i++ )
387  {
388  EntityAI entity = showable_items.Get( i );
389  if ( entity )
390  {
391  if ( game_inventory && !m_ShowedItems.Contains( entity ) )
392  {
393  string config = "CfgVehicles " + entity.GetType() + " GUIInventoryAttachmentsProps";
394 
395  if ( GetGame().ConfigIsExisting( config ) )
396  {
398  ac.SetEntity( entity );
399  new_showed_items.Insert( entity, ac );
400  showed_items_IDs.Insert( entity.GetID(), ac);
401  }
402  else if ( entity.GetSlotsCountCorrect() > 0 && entity.GetInventory().GetCargo() )
403  {
404  if ( entity.IsInherited( DayZInfected ) )
405  {
406  if ( entity.IsAlive() )
407  {
408  continue;
409  }
410  ZombieContainer zmb_cnt = new ZombieContainer( m_Parent, -1 );
411  zmb_cnt.SetEntity( entity );
412  new_showed_items.Insert( entity, zmb_cnt );
413  showed_items_IDs.Insert( entity.GetID(), zmb_cnt );
414  Container.Cast( GetParent() ).Insert( zmb_cnt );
415  }
416  else
417  {
418  ContainerWithCargoAndAttachments iwca = new ContainerWithCargoAndAttachments( this, -1 );
419  iwca.SetEntity( entity, false );
420  new_showed_items.Insert( entity, iwca );
421  showed_items_IDs.Insert( entity.GetID(), iwca );
422  }
423  }
424  else if ( entity.GetInventory().GetCargo() )
425  {
426  ContainerWithCargo iwc = new ContainerWithCargo( this, -1 );
427  iwc.SetEntity( entity, 0, false );
428  new_showed_items.Insert( entity, iwc );
429  showed_items_IDs.Insert( entity.GetID(), iwc );
430  iwc.UpdateInterval();
431  }
432  else if ( entity.GetSlotsCountCorrect() > 0 )
433  {
434  if ( entity.HasEnergyManager() )
435  {
437  iwem.SetEntity( entity, false );
438  new_showed_items.Insert( entity, iwem );
439  showed_items_IDs.Insert( entity.GetID(), iwem );
440  }
441  else
442  {
443  if ( entity.IsInherited( PlayerBase ) )
444  {
446  if (accessInventory == false)
447  {
448  if ( entity.IsAlive() && ( !PlayerBase.Cast( entity ).IsUnconscious() && !PlayerBase.Cast( entity ).IsRestrained() ) )
449  {
450  continue;
451  }
452  }
453 
454  PlayerContainer plyr_cnt = new PlayerContainer( m_Parent, false );
455  plyr_cnt.SetPlayer( PlayerBase.Cast( entity ) );
456  Container.Cast( GetParent() ).Insert( plyr_cnt );
457  ( Container.Cast( m_Parent ) ).Refresh();
458  new_showed_items.Insert( entity, plyr_cnt );
459  showed_items_IDs.Insert( entity.GetID(), plyr_cnt);
460  }
461  else
462  {
463  ContainerWithCargoAndAttachments iwcas = new ContainerWithCargoAndAttachments( this, -1 );
464  iwcas.SetEntity( entity, false );
465  new_showed_items.Insert( entity, iwcas );
466  showed_items_IDs.Insert( entity.GetID(), iwcas );
467  iwcas.UpdateInterval();
468  }
469  }
470  }
471  }
472  else
473  {
474  //TODO MW: remove old containers on one spot (hotfix)
475  con = m_ShowedItems.Get( entity );
476  if ( con )
477  {
478  if ( entity.IsInherited( PlayerBase ) )
479  {
481  if ( !accessInventory && entity.IsAlive() && ( !PlayerBase.Cast( entity ).IsUnconscious() && !PlayerBase.Cast( entity ).IsRestrained() ) )
482  {
483  GetMainWidget().Update();
484  if ( con.IsActive() )
485  need_update_focus = true;
486  Container.Cast( GetParent() ).Remove( con );
487  Remove( con );
488  continue;
489  }
490  }
491 
492  if ( entity.IsInherited( BaseBuildingBase ) )
493  {
494  if ( !BaseBuildingBase.Cast(entity).IsPlayerInside(player,""))
495  {
496  GetMainWidget().Update();
497  if ( con.IsActive() )
498  need_update_focus = true;
499  Container.Cast( GetParent() ).Remove( con );
500  Remove( con );
501  continue;
502  }
503  }
504 
505  new_showed_items.Insert( entity, m_ShowedItems.Get( entity ) );
506  showed_items_IDs.Insert( entity.GetID(), m_ShowedItemsIDs.Get( entity.GetID() ) );
507  }
508  }
509  }
510  }
511 
512  ref map<CargoBase, ref Container> new_showed_cargos = new ref map<CargoBase, ref Container>;
513  auto cargoes = VicinityItemManager.GetInstance().GetVicinityCargos();
514  for ( i = 0; i < cargoes.Count(); i++ )
515  {
516  CargoBase cgo = cargoes.Get( i );
517  if ( cgo )
518  {
519  if (game_inventory && !m_ShowedCargos.Contains( cgo ) )
520  {
521  ContainerWithCargo pxc = new ContainerWithCargo( this, -1 );
522  pxc.SetEntity( cgo.GetCargoOwner(), cgo.GetOwnerCargoIndex(), false );
523  new_showed_cargos.Insert( cgo, pxc );
524  pxc.UpdateInterval();
525  }
526  else
527  {
528  if ( m_ShowedCargos.Get( cgo ) )
529  {
530  new_showed_cargos.Insert( cgo, m_ShowedCargos.Get( cgo ) );
531  }
532  }
533  }
534  }
535 
536  for ( int ic = 0; ic < m_ShowedCargos.Count(); ic++ )
537  {
538  CargoBase cgo2 = m_ShowedCargos.GetKey( ic );
539  m_ShowedCargos.GetElement( ic ).UpdateInterval();
540  if ( !new_showed_cargos.Contains( cgo2 ) )
541  {
542  Container con2 = m_ShowedCargos.GetElement( ic );
543  if( con2.IsActive() )
544  need_update_focus = true;
545  GetMainWidget().Update();
546  Container.Cast( GetParent() ).Remove( con2 );
547  Remove( con2 );
548  }
549  }
550 
551  m_ShowedItems = new_showed_items;
552  m_ShowedItemsIDs = showed_items_IDs;
553  m_ShowedCargos = new_showed_cargos;
554  //Because WTF (zombie container)
555  Container.Cast( GetParent() ).RecomputeOpenedContainers();
556  if (need_update_focus)
557  SetFirstActive();
558  //RecomputeOpenedContainers();
559  UpdateCollapseButtons();
560  m_VicinityIconsContainer.ShowItemsInContainers( m_ShowedItemIcons );
561 
562  if ( m_ShowedItemIcons.Count() != m_OldShowedItemIconsCount )
563  {
564  Inventory in = Inventory.Cast( GetRoot() );
565  if ( in )
566  in.UpdateConsoleToolbar();
567  }
568  }
569 
570  void ToggleContainer( Widget w, EntityAI item )
571  {
572  SlotsIcon slots_icon;
573  Container c;
574  w.GetUserData(slots_icon);
575 
576  if ( item )
577  {
578  c = Container.Cast( m_ShowedItems.Get( item ) );
579  }
580 
581  if (c)
582  {
583  ToggleContainer(c);
584  }
585  }
586 
587  override bool CanOpenCloseContainerEx(EntityAI focusedEntity)
588  {
589  if (focusedEntity)
590  {
591  ClosableContainer c = ClosableContainer.Cast( m_ShowedItems.Get( focusedEntity ) );
592  if (c && c.IsDisplayable())
593  {
594  return true;
595  }
596  }
597  return false;
598  }
599 
600  //Call from ExpandCollapseContainer - not call
601  void ToggleContainer( notnull Container conta )
602  {
603  conta.Toggle();
604  }
605 
606  override void ExpandCollapseContainer()
607  {
608  EntityAI item = GetFocusedItem();
609  Container conta;
610 
611  if (m_ShowedItems && item)
612  {
613  conta = m_ShowedItems.Get( item );
614  if (conta)
615  {
616  ToggleContainer( conta );
617  }
618  }
619  }
620 
621  override bool OnChildRemove( Widget w, Widget child )
622  {
623  w.Update();
624  float x, y;
625  w.GetScreenSize( x, y );
626  if ( w == GetMainWidget() )
627  {
628  GetMainWidget().Update();
629  m_Parent.OnChildRemove( w, child );
630  }
631  return true;
632  }
633 
634  override bool OnChildAdd( Widget w, Widget child )
635  {
636  if ( w == GetMainWidget() )
637  {
638  GetMainWidget().Update();
639  m_Parent.OnChildAdd( w, child );
640  }
641  return true;
642  }
643 
644  override void CollapseButtonOnMouseButtonDown(Widget w)
645  {
646  super.CollapseButtonOnMouseButtonDown(w);
647  ItemManager.GetInstance().SetDefaultHeaderOpenState( "VICINITY", !m_Hidden );
648  }
649 
651  void UpdateHeader(EntityAI entity, Container cont, PlayerBase player)
652  {
653  bool draggable = ItemManager.GetInstance().EvaluateContainerDragabilityDefault(entity);
654 
655  if (cont.GetHeader())
656  {
657  if (GetDragWidget() == cont.GetHeader())
658  {
660  }
661  ItemManager.GetInstance().SetWidgetDraggable(cont.GetHeader().GetMainWidget(),draggable);
662  }
663  }
664 
665  override bool SplitItem()
666  {
667  if ( CanSplit() )
668  {
669  ItemBase item = ItemBase.Cast(GetFocusedItem());
670  if (item)
671  {
672  if (item.HasQuantity() && item.CanBeSplit())
673  {
674  item.OnRightClick();
675  }
676  }
677  }
678  return false;
679  }
680 }
ItemBase
Definition: inventoryitem.c:730
GetGame
proto native CGame GetGame()
LayoutHolder
Definition: container.c:1
m_RootWidget
ref Widget m_RootWidget[MAX_SIMULTANIOUS_PLAYERS]
Definition: pluginremoteplayerdebugclient.c:14
Remove
void Remove(Object object)
Definition: actiontargets.c:95
y
Icon y
InventoryLocation
InventoryLocation.
Definition: inventorylocation.c:27
ZombieContainer
Definition: zombiecontainer.c:1
DayZInfected
Definition: zombiebase.c:1
m_Parent
protected Widget m_Parent
Definition: sizetochild.c:92
Refresh
void Refresh()
Definition: sizetochild.c:108
FileSerializer
Serializer API implementation for File IO. See Serializer for more info. usage:
Definition: serializer.c:103
FileMode
FileMode
Definition: ensystem.c:382
MENU_INVENTORY
const int MENU_INVENTORY
Definition: constants.c:170
CancelWidgetDragging
proto native Widget CancelWidgetDragging()
CombineItemsClient
override void CombineItemsClient(EntityAI entity2, bool use_stack_max=true)
Definition: itembase.c:849
AttachmentCategoriesContainer
Definition: attachmentcategoriescontainer.c:1
AnimalBase
Definition: animalbase.c:77
PlayerBase
Definition: playerbaseclient.c:1
map
map
Definition: controlsxboxnew.c:3
VicinityItemManager
Definition: vicinityitemmanager.c:1
vector
Definition: enconvert.c:105
VicinityContainer
Definition: vicinitycontainer.c:1
BaseBuildingBase
Definition: fence.c:1
ColorManager
Definition: colormanager.c:1
InventoryLocationType
InventoryLocationType
types of Inventory Location
Definition: inventorylocation.c:3
CargoBase
represents base for cargo storage for entities
Definition: cargo.c:6
Container
Definition: cargocontainer.c:2
GetDragWidget
proto native Widget GetDragWidget()
PlayerContainer
Definition: playercontainer.c:1
SlotsIcon
Definition: slotsicon.c:1
ItemManager
Definition: itemmanager.c:1
array< EntityAI >
name
PlayerSpawnPresetDiscreteItemSetSlotData name
one set for cargo
x
Icon x
GetPlayer
protected void GetPlayer()
Definition: crosshairselector.c:127
ItemPreviewWidget
Definition: gameplay.c:275
InventoryMenu
void InventoryMenu()
Definition: inventorymenu.c:20
CollapsibleContainer
Definition: collapsiblecontainer.c:1
ContainerWithElectricManager
Definition: containerwithelectricmanager.c:1
VicinitySlotsContainer
Definition: vicinityslotscontainer.c:1
GetParent
proto native Widget GetParent()
Get parent of the Effect.
Definition: effect.c:405
Inventory
void Inventory(LayoutHolder parent)
Definition: inventory.c:76
Widget
Definition: enwidgets.c:189
EntityAI
Definition: building.c:5
ClosableContainer
Definition: containerwithcargo.c:1
GameInventory
script counterpart to engine's class Inventory
Definition: inventory.c:78
WidgetEventHandler
Definition: widgeteventhandler.c:1