//----------------------------------------------------------------- //! @summary 設定データを保存する //! //! @parameter [settingData] 保存する設定データ //! //! @return なし //----------------------------------------------------------------- public void SaveSettingData(PiarhythmDatas.SettingData settingData) { // json文字列に変換する string jsonString = JsonConvert.SerializeObject(settingData); // ファイルに書き込んで保存する PiarhythmUtility.WriteFileText(PiarhythmDatas.SETTING_DATA_FILE_PATH, jsonString, false); }
//----------------------------------------------------------------- //! @summary 楽曲データの保存処理 //! //! @parameter [filePath] 保存するファイルパス //! //! @return なし //----------------------------------------------------------------- public void SaveMusicPiece(string filePath) { // 音楽ファイルのパスを取得する string audioFilePath = m_bgmSheetController.GetAudioFilePath(); // BGMデータを取得する PiarhythmDatas.BGMData bgmData = m_bgmSheetController.GetBGMData(); if ((audioFilePath == null) && (bgmData != null)) { audioFilePath = bgmData.m_path; } // BGMをコピーする if ((audioFilePath != null) && (bgmData != null)) { PiarhythmUtility.CopyFile(audioFilePath, bgmData.m_path); } // ノーツデータを取得する PiarhythmDatas.NoteData[] notesDatas = m_notesManager.GetNotesDatas(); // 設定データを取得する PiarhythmDatas.OptionData optionData = m_optionSheetController.GetOptionData(); // 楽曲データを作成する PiarhythmDatas.MusicPieceData musicPieceData = ScriptableObject.CreateInstance <PiarhythmDatas.MusicPieceData>(); musicPieceData.m_bgmData = bgmData; musicPieceData.m_noteDataList = notesDatas; musicPieceData.m_optionData = optionData; // json文字列に変換する string jsonString = JsonConvert.SerializeObject(musicPieceData, new JsonSerializerSettings { ReferenceLoopHandling = ReferenceLoopHandling.Serialize }); // 拡張子があるか調べる if (Path.GetExtension(filePath) != ".json") { filePath += ".json"; } // ファイルに書き込んで保存する PiarhythmUtility.WriteFileText(filePath, jsonString); }