public Songs FromProjectFile(string fileName) { var project = FileManager.OpenFile(fileName); var result = TJAManager.Build(null, project, null, false); return(GetCourseFromCourses(result)); }
private void Button_Build_Click(object sender, EventArgs e) { if (SongList.Count > 0) { var dialog = new SaveFileDialog(); dialog.Title = Properties.SystemMessage.SaveTJA; dialog.Filter = String.Format("{0}|*{1}", Properties.Common.TJAExtensionDescription, Properties.Common.TJAExtensionName); if (dialog.ShowDialog() == DialogResult.OK) { var result = ""; var danTitle = Path.GetFileNameWithoutExtension(dialog.FileName); result += string.Format("TITLE:{0}" + Environment.NewLine, danTitle); result += string.Format("BPM:{0}" + Environment.NewLine, SongList[0].BPM); result += string.Format("WAVE:{0}" + Environment.NewLine, SongList[0].Wave); result += string.Format("DEMOSTART:{0}" + Environment.NewLine, SongList[0].DemoStart); result += string.Format("SCOREMODE:{0}" + Environment.NewLine, SongList[0].ScoreMode); result += string.Format("COURSE:Dan" + Environment.NewLine); result += string.Format("LEVEL:{0}" + Environment.NewLine, SongList[0].Level); var balloon = ""; for (int i = 0; i < SongList.Count; i++) { balloon += SongList[i].Balloon; if (!string.IsNullOrWhiteSpace(SongList[i].Balloon) && i != SongList.Count - 1) { balloon += ","; } } result += string.Format("BALLOON:{0}" + Environment.NewLine, balloon); if (ExamHeader_Exam1.ToString() != null) { result += string.Format("EXAM1:{0}" + Environment.NewLine, ExamHeader_Exam1.ToString()); } if (ExamHeader_Exam2.ToString() != null) { result += string.Format("EXAM2:{0}" + Environment.NewLine, ExamHeader_Exam2.ToString()); } if (ExamHeader_Exam3.ToString() != null) { result += string.Format("EXAM3:{0}" + Environment.NewLine, ExamHeader_Exam3.ToString()); } result += string.Format(Environment.NewLine); result += string.Format("#START" + Environment.NewLine); foreach (var item in SongList) { result += item.ToString(); } result += string.Format("#END" + Environment.NewLine); TJAManager.Build(dialog.FileName, result, Program.Setting.UTF8Mode ? new UTF8Encoding() : Encoding.GetEncoding("Shift-JIS")); foreach (var item in SongList) { if (File.Exists(Path.GetDirectoryName(item.FilePath) + @"\" + item.Wave)) { // ファイルが存在するならコピーしてあげる File.Copy(Path.GetDirectoryName(item.FilePath) + @"\" + item.Wave, Path.GetDirectoryName(dialog.FileName) + @"\" + item.Wave, true); } } // ふぉるだを開いてあげる Process.Start(Path.GetDirectoryName(dialog.FileName)); } dialog.Dispose(); } DialogResult = DialogResult.None; }