Beispiel #1
0
        /// <summary>
        /// Removes an item from the inventory.
        /// </summary>
        /// <param name="ItemID">The item id.</param>
        /// <returns>Returns true if the item was removed.</returns>
        public bool RemoveItem(uint ItemID)
        {
            byte     pos = GetPositionFromItemID(ItemID);
            ItemInfo rItem;

            if (InventoryItems.TryRemove(pos, out rItem))
            {
                Database.CharacterDatabase.SaveInventory(Owner, null, pos);
                RemoveItemFromClient(rItem);
                return(true);
            }
            return(false);
        }
Beispiel #2
0
 /// <summary>
 /// Removes an item from the inventory based on is iteminfo.
 /// </summary>
 /// <param name="info">The item info.</param>
 /// <returns>Returns true if the item was removed.</returns>
 public bool RemoveItem(ItemInfo info)
 {
     foreach (byte key in InventoryItems.Keys)
     {
         ItemInfo ritem;
         if (InventoryItems.TryGetValue(key, out ritem))
         {
             if (ritem.UID == info.UID)
             {
                 if (InventoryItems.TryRemove(key, out ritem))
                 {
                     Database.CharacterDatabase.SaveInventory(Owner, null, key);
                     RemoveItemFromClient(ritem);
                     return(true);
                 }
                 else
                 {
                     return(false);
                 }
             }
         }
     }
     return(false);
 }