Exemplo n.º 1
0
        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);
            }
        }
Exemplo n.º 2
0
        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);
            }
        }