public void AddItem(uint uid, int quantity, uint price) { var item = Client.Character.Inventory.GetItem(uid); if (item == null) { Client.Character.ReplyError("Impossible, cet item n'éxiste pas"); return; } if (item.Quantity < quantity) { return; } if (CharacterBidItems.Count == BidShopRecord.GetBidShop(BidShopId).MaxItemPerAccount) { return; } Client.Character.Inventory.RemoveItem(item.UID, (uint)quantity); var existing = CharacterBidItems.Find(x => x.objectUID == item.UID); if (existing == null) { SaveTask.AddElement(new BidShopItemRecord(BidShopId, price, quantity, item)); } else { SaveTask.AddElement(new BidShopItemRecord(BidShopId, price, quantity, item.CloneAndGetNewUID())); } OpenSellPanel(); }
public void MoveItem(uint uid, int quantity) { var item = CharacterBidItems.Find(x => x.objectUID == uid); var realItem = BidShopItemRecord.GetBidShopItem(uid); SaveTask.RemoveElement(realItem); Client.Character.Inventory.Add(new CharacterItemRecord(realItem.UID, 63, realItem.GID, Client.Character.Id, realItem.Quantity, realItem.GetEffects())); OpenSellPanel(); }