/// <summary> /// Метод конвертации информации из базы в игровые объекты /// </summary> /// <returns>Игровые объекты</returns> private List <UpgradeObjectItem> ConverSaveXmlToObjectList() { var saveItemsXml = saveUpgrades.Save_Upgrade_Items.Save_New_Items.Save_UpdateNewOjectItem; saveItemsXml = saveItemsXml.Where(x => allUpgradeObjectItems.Any(y => y.Id == x.Id)).ToList(); List <UpgradeObjectItem> saveGameItems = new List <UpgradeObjectItem>(); foreach (var paramsItem in saveItemsXml) { try { var idItem = paramsItem.Id; var gameItemInAll = allUpgradeObjectItems.FirstOrDefault(x => x.Id == paramsItem.Id); UpgradeObjectItem gameItem = new UpgradeObjectItem() { Id = idItem, Name = gameItemInAll.Name, Description = gameItemInAll.Description }; saveGameItems.Add(gameItem); } catch (Exception ex) { Debug.LogError(ex.Message); continue; } } return(saveGameItems); }
/// <summary> /// Добавляет запись в базу данных сохранения /// </summary> /// <param name="Item">Объект, который будут сохранен в БД</param> /// <returns></returns> public bool AddItemInSaveFile(UpgradeObjectItem Item) { try { var allSaveItems = saveGameInformation.Save_Upgrades.Save_Upgrade_Items.Save_New_Items.Save_UpdateNewOjectItem; allSaveItems.Add(Item); saveGameInformation.Save_Upgrades.Save_Upgrade_Items.Save_New_Items.Save_UpdateNewOjectItem = allSaveItems; DataBaseManager.dataBaseManager.SaveChanges(saveGameInformation); } catch (Exception ex) { Debug.LogError($"{ex.Message} \n {ex.StackTrace} \n MethodName: AddItemInSaveFile()"); } return(true); }
/// <summary> /// Метод конвертации базовых объектов в игровые /// </summary> /// <returns>Игровые объекты</returns> private List <UpgradeObjectItem> ConvertBaseObjectXmlToObjectList() { List <UpgradeObjectItem> allUpgradeObjectItems = new List <UpgradeObjectItem>(); List <newAssignment_Item> xmlNewItemsAssignment = xmlUpgrades.Upgrade_Items.New_Items.UpgradeNewAssignment_Items.newAssignment_Items; foreach (var baseNewItem in baseUpgradeObjectItems) { try { UpgradeObjectItem upgradeObjectItem = UpgradeObjectItem.ConvertUpgradeBaseObject(baseNewItem); upgradeObjectItem.OpenIds = xmlNewItemsAssignment.Where(x => x.IdUpgrade == baseNewItem.Id).Select(x => x.IdNew).ToArray(); allUpgradeObjectItems.Add(upgradeObjectItem); } catch (Exception ex) { Debug.LogError(ex.Message); continue; } } return(allUpgradeObjectItems); }