示例#1
0
 public void RemoveItem(Item item)
 {
     if (item.IsStackable())
     {
         Item itemInInventory = null;
         foreach (Item inventoryItem in itemList)
         {
             if (inventoryItem.itemType == item.itemType)
             {
                 inventoryItem.amount -= item.amount;
                 itemInInventory       = inventoryItem;
             }
         }
         if (itemInInventory != null && itemInInventory.amount <= 0)
         {
             itemList.Remove(itemInInventory);
         }
         else
         {
             itemList.Remove(item);
         }
         OnItemListChange?.Invoke(this, EventArgs.Empty);
     }
 }