デバッグメニューそのものは、ビルドするとボタンが押せなくなるようにしていますが、
プログラムを呼び出すこと自体できるので、それを使ってもいいです。
Assets/Utage/Scripts/GameLib/SystemUI/SystemUiDebugMenu.cs の
OnClickDeleteAllSaveDataAndQuit がそのプログラムになります。
このプログラムは、PlayerPrefs.というUnity公式のセーブ機能です。(宴でもWebGLではファイル書き込みが使えないのでこっちにセーブしています)
これも消してしまうので注意してください。
問題があるようであれば、上記のプログラムをコピーして独自実装してください。
また、このプログラムではセーブデータを消すと同時に、いったんゲームを強制終了しています。(Application.Quit())
というのも、現在実行中のゲームのパラメーターが消えるわけではなくて、消すのはあくまでセーブデータのファイルです。
そのままゲームを続行して終了すると、実行中のゲームのパラメーターで再びシステムセーブデータを上書きしてしまってもとに戻ってしまうため、
消すと同時にゲームをいったん強制終了しています。
また、システムセーブデータにはパラメーター以外にも既読フラグなど、いろいろなデータも入っているので、それも消してしまうので注意してください。
>「通常セーブ変数のみを削除したい」
これはどちらかというと、パラメーターの操作になります。
AdvEngine内で、ゲーム起動時にいったんパラメーターをリセットしている部分があるので、それを参考にしてみてください。
//基本的なパラメーターをデフォルト値でリセット(システムデータ以外)
Param.InitDefaultNormal(DataManager.SettingDataManager.DefaultParam);
>「特定のセーブスロットのデータのみ削除したい(セーブ/ロード画面に削除ボタンを設置したい)」
「セーブロードUIボタンに、セーブデータを削除する機能を追加する」サンプルが、
Utage/Sample/Scripts/SampleCustomSaveLoadButton.csにありますのでこちらを参考にしてください。(4.1.5で追加)
2025年6月8日日曜日 15:16:53 UTC+9 nunu: