private void ImportBattleOverFile_Click(object sender, EventArgs e) { var importDialog = FileHelper.GetImportBattleFileDialog(title: "Import Custom Spirit Over Current.", initialDirectory: dataTbls.config.file_directory_custom_battles); if (importDialog.ShowDialog() == CommonFileDialogResult.Ok && !String.IsNullOrWhiteSpace(importDialog?.FileName)) { DataOptions options = new DataOptions(); if (importDialog.SelectedFileTypeIndex == (int)Import_Filters.json) { var importedBattle = XmlHelper.DeserializeFromFile(importDialog.FileName); importedBattle.battle.msbtUpdated = true; // We want to be sure we write the new title when we save. options.AddDataTbl(importedBattle.battle); options.AddRangeDataTbl(importedBattle.fighters); } else if (importDialog.SelectedFileTypeIndex == (int)Import_Filters.prc) { options = XmlHelper.ReadXML(importDialog.FileName, dataTbls.config.labels_file_location); } options.SetBattleIdsForAll(dataTbls.selectedBattle.battle_id); var battle = (Battle)options.GetItemsOfType(typeof(Battle)).FirstOrDefault(); SaveImportToDataTbls(options); SetSelectedBattleByBattle(battle); } }
private void ImportBattleFromTypeAndFile(int selectedFileType, string fileName, bool setBattle = true) { DataOptions options = new DataOptions(); if (selectedFileType == (int)Import_Filters.json) { var importedBattle = XmlHelper.DeserializeFromFile(fileName); importedBattle.battle.msbtUpdated = true; // We want to be sure we write the new title when we save. options.AddDataTbl(importedBattle.battle); options.AddRangeDataTbl(importedBattle.fighters); options.AddDataTbl(importedBattle.spirit); } else if (selectedFileType == (int)Import_Filters.prc) { options = XmlHelper.ReadXML(fileName, dataTbls.config.labels_file_location); } SaveImportToDataTbls(options); if (setBattle) { var battle = (Battle)options.GetItemsOfType(typeof(Battle)).FirstOrDefault(); SetSelectedBattleByBattle(battle); } }