宴のファイル出力のルートパスは、
FileIOManager.SdkPersistentDataPathで定義されています。
Unityの定める「Application.persistentDataPath」以下の「Utage」というサブフォルダ以下になります。
ルートパスを変更することはできないので、フィアルパスを作成するメソッドのほうをoverrideしてください。
Assets/Utage/Scripts/ADV/Save/AdvSaveManager.cs
必要に応じて以下のメソッドが呼ばれ、ファイルパスが決まります。
protected virtual string ToFilePath(string id)
{
return FilePathUtil.Combine(ToDirPath(),FileName + id);
}
protected virtual string ToDirPath()
{
return FilePathUtil.Combine(FileIOManager.SdkPersistentDataPath, DirectoryName + "/");
}
システムセーブデータのソースコードは以下の通りです
Assets/Utage/Scripts/ADV/Save/AdvSystemSaveData.cs
初期化時に以下のメソッドが呼ばれ、Pathが設定されます。
protected virtual bool TryReadSaveData()
{
if (DontUseSystemSaveData) return false;
string saveDir = FilePathUtil.Combine(FileIOManager.SdkPersistentDataPath, DirectoryName);
//セーブデータのディレクトリがなければ作成
FileIOManager.CreateDirectory(saveDir);
Path = FilePathUtil.Combine(saveDir, FileName);
if (!FileIOManager.Exists(Path)) return false;
return FileIOManager.ReadBinaryDecode(Path, ReadBinary);
}
上記のコンポーネントを継承したコンポーネントを作成して、各メソッドをoverrideしたものを定義し、
そのコンポーネントを、シーン内のAdvEngineオブジェクトの既存のコンポーネントとさしかえてください。
また、Unityエディタ上のメニューからセーブファイルを消すツールはルートパスで動作していますので、これは使えなくなります。
2024年4月22日月曜日 2:13:54 UTC+9 湿った春風: