Class: TonSaveLoadMenu
セーブ・ロード画面のUIと処理を提供するクラスです。
Ton.Data と統合されており、自動的にゲームデータの保存と読み込みを行います。
Relationship with TonGameData
このメニュークラスは、Ton.Data (TonGameData インスタンス) と密結合しています。
- Save:
Open(Mode.SaveOnly)やExecuteAutoSaveを実行すると、現在のTon.Dataインスタンスがそのままシリアライズされます。 - Load: ロードを実行すると、新しい
TonGameDataインスタンスが生成され、Ton.Data(Ton.Instance.gamedata) が新しいインスタンスに完全に置換されます。
Properties
Action OnLoaded { get; set; }
ロード処理完了後に実行されるコールバックです。シーン遷移や、ロード直後のUI更新などを制御するために使用します。
Methods
void Open(TonSaveLoadMode mode)
セーブ/ロード画面を開きます。引数なしで実行でき、自動的に現在の Ton.Data を扱います。
mode: 画面モードSaveOnly: セーブのみ可能LoadOnly: ロードのみ可能BothDefaultSave: 両方可能(初期タブはセーブ)BothDefaultLoad: 両方可能(初期タブはロード)
static void ExecuteAutoSave()
現在アクティブなスロット(またはオートセーブ用スロット)に即座に上書き保存を行います。UIは表示されません。
bool IsOpen()
現在メニューが開いているかどうかを返します。
Sample Code
// 単純にメニューを開く
if (Ton.Input.IsJustPressed("Start"))
{
Ton.SaveLoadMenu.Open(TonSaveLoadMode.BothDefaultSave);
}
// ロード後の挙動を設定(初期化時など)
Ton.SaveLoadMenu.OnLoaded = () => {
Ton.Log.Info("Game Loaded!");
// シーン遷移など
};