コード例 #1
0
        private void CombineJsonBtn_Click(object sender, EventArgs e)
        {
            OpenFileDialog openFileDialog = new OpenFileDialog();

            openFileDialog.Filter      = "谱面文件(*.txt;*.aff)|*.txt;*.aff";
            openFileDialog.Multiselect = true; //是否可以多选
            if (openFileDialog.ShowDialog() == DialogResult.OK)
            {
                StringBuilder combinedJson = new StringBuilder();
                //多个文件
                string[] jsonNames = openFileDialog.FileNames;
                for (int i = 0; i < jsonNames.Length; i++)
                {
                    StringBuilder tmp = EuyFile.ReadFile(jsonNames[i]);
                    if (i == 0)
                    {
                        combinedJson = tmp;
                    }
                    else
                    {
                        combinedJson.Append(new StringBuilder(",\n" + tmp));
                    }
                }
                EuyFile.WriteFile(Directory.GetParent(jsonNames[0]).FullName + "\\combinedJson.txt", combinedJson);
                ShowArcaeaDialog("合并json成功!");
            }
        }
コード例 #2
0
        private void RapidPackSongList()//快速打包 2.aff为带小节线变速 1.aff无小节线变速
        {
            string songOriginID  = Directory.GetParent(this.sheetUrl).Name;
            string songName      = songOriginID + " " + this.speed.ToString() + "x";
            string directoryName = songOriginID + this.speed.ToString("f2").Replace(".", "");
            string songlistPath  = Path.Combine(this.sheetDirectory, directoryName);

            this.packPath = songlistPath;
            Directory.CreateDirectory(songlistPath);

            if (songListGenerator.isOfficial)
            {
                if (!songListGenerator.isExistSong(songOriginID))
                {
                    ShowArcaeaDialog("歌曲信息未在songlist中查找到,将按照默认值生成json");
                }
            }

            //生成Arcaoid文件
            if (arcaoid)
            {
                StringBuilder arcaoidData = songListGenerator.RapidGenerateArcaoid(songOriginID, " " + this.speed.ToString() + "x", directoryName, songName);
                EuyFile.WriteFile(songlistPath + "\\ARCAOID.txt", arcaoidData);
            }
            else    //生成songlist
            {
                string songlist = songListGenerator.RapidGenerateSonglist(songOriginID, " " + this.speed.ToString() + "x", directoryName, songName);
                Euynac.Utility.EuyFile.WriteFile(sheetDirectory + songName + ".txt", new StringBuilder(songlist));
            }

            ////生成aff
            //nowPack = 2;//打包2.aff
            //StringBuilder sheet = ChangeSheetSpeed(sheetUrl);
            //Euynac.Utility.File.WriteFile(songlistPath + "\\" + "2.aff", sheet);
            //nowPack = 1;//打包1.aff
            //sheet = ChangeSheetSpeed(sheetUrl);
            //Euynac.Utility.File.WriteFile(songlistPath + "\\" + "1.aff", sheet);
            //Euynac.Utility.File.WriteFile(songlistPath + "\\" + "0.aff", sheet);

            ////生成音频
            ChangeAudioSpeed();
            //生成图片
            if (File.Exists(sheetDirectory + "base.jpg") && File.Exists(sheetDirectory + "base_256.jpg"))
            {
                if (!File.Exists(packPath + "\\base.jpg"))
                {
                    File.Copy(sheetDirectory + "base.jpg", packPath + "\\base.jpg");
                }
                if (!arcaoid)
                {
                    if (!File.Exists(packPath + "\\base_256.jpg"))
                    {
                        File.Copy(sheetDirectory + "base_256.jpg", packPath + "\\base_256.jpg");
                    }
                }
            }
        }
コード例 #3
0
 private void GenerateSqlDataBtn_Click(object sender, EventArgs e)
 {
     if (!songListGenerator.OpenSonglist("songlist"))
     {
         ShowArcaeaDialog("songlist文件不存在!");
     }
     else
     {
         ShowArcaeaDialog("成功导入songlist文件,将按songlist信息生成");
         EuyFile.WriteFile("SongData.txt", songListGenerator.GenerateAllSongData());
         ShowArcaeaDialog("歌曲数据生成成功!");
     }
 }