public void SaveCashItems(CharacterCashItems otherItems) { // Move cashitems back to the _cashItems object // 'Hidden' equips _cashItems.Equips.AddRange(Equips[1].Where(y => y != null && y.CashId != 0)); // Unequipped equips _cashItems.Equips.AddRange(Items[0].Where(y => y is EquipItem && y.CashId != 0).Select(y => y as EquipItem)); // Bundles _cashItems.Bundles.AddRange(Items.SelectMany(x => x.Where(y => y is BundleItem && y.CashId != 0).Select(y => y as BundleItem))); // Pets _cashItems.Pets.AddRange(Items.SelectMany(x => x.Where(y => y is PetItem && y.CashId != 0).Select(y => y as PetItem))); if (otherItems == null) { CharacterCashItems.SaveMultiple(_cashItems); } else { CharacterCashItems.SaveMultiple(_cashItems, otherItems); } // Cleanup for next save _cashItems.Equips.Clear(); _cashItems.Bundles.Clear(); _cashItems.Pets.Clear(); }
protected BaseCharacterInventory(int userId, int characterId) { UserID = userId; CharacterID = characterId; _cashItems = new CharacterCashItems(UserID, CharacterID); }