/// <summary> /// Load the item inventory from the inventory manager to a UI inventory panel. /// </summary> public void LoadInventoryToInventoryModal(InventoryType inventory) { RectTransform itemArea = inventory.Equals(InventoryType.PLAYER) ? playerInventoryItemArea : shopInventoryItemArea; RectTransform uiItemObject = inventory.Equals(InventoryType.PLAYER) ? inventoryUIObject : shopUIObject; // Remove existing inventory items foreach (RectTransform r in itemArea.GetComponentsInChildren <RectTransform>()) { if (r != itemArea) { Destroy(r.gameObject); } } if (inventory.Equals(InventoryType.PLAYER)) { foreach (InventoryItem item in InventoryManager.Instance.playerItems) { RectTransform i = Instantiate(uiItemObject, itemArea.transform); i.GetComponent <UIInventoryItem>().InitializeWithData(item); } } else { foreach (InventoryItem item in InventoryManager.Instance.shopItems) { RectTransform i = Instantiate(uiItemObject, itemArea.transform); i.GetComponent <UIInventoryItem>().InitializeWithData(item); } } // Equipped Items (if necessary) if (inventory.Equals(InventoryType.PLAYER)) { foreach (RectTransform r in inventoryEquippedArea.GetComponentsInChildren <RectTransform>()) { if (r != inventoryEquippedArea) { Destroy(r.gameObject); } } // Load the equipped items to the bar foreach (ToolItem i in InventoryManager.Instance.equippedItems) { RectTransform t = Instantiate(equippedToolUIObject, inventoryEquippedArea.transform); t.GetComponent <UIEquippedTool>().InitializeWithData(i); } } }
public void RemoveItem(InventoryItem item, InventoryType inventory) { if (inventory.Equals(InventoryType.PLAYER)) { playerItems.Remove(item); } else { shopItems.Remove(item); } UIManager.Instance.LoadInventoryToInventoryModal(inventory); }
public override bool Equals(object obj) { if (this == obj) { return(true); } if (obj == null || this.GetType() != obj.GetType()) { return(false); } Item item = (Item)obj; return(this.hash.Equals(item.Hash) && type.Equals(item.Type)); }
private void ExecuteHandler(ClientSession session) { lock (session.Character.Inventory) { if (Slot.Equals(DestinationSlot) && InventoryType.Equals(DestinationInventoryType)) { return; } if (DestinationSlot > 48 + ((session.Character.HaveBackpack() ? 1 : 0) * 12)) { return; } if (session.Character.InExchangeOrTrade) { return; } ItemInstance sourceItem = session.Character.Inventory.LoadBySlotAndType(Slot, InventoryType); if (sourceItem?.Item.ItemType == ItemType.Specialist || sourceItem?.Item.ItemType == ItemType.Fashion) { ItemInstance inv = session.Character.Inventory.MoveInInventory(Slot, InventoryType, DestinationInventoryType, DestinationSlot, false); if (inv != null) { session.SendPacket(inv.GenerateInventoryAdd()); session.SendPacket( UserInterfaceHelper.Instance.GenerateInventoryRemove(InventoryType, Slot)); } } } }