ロード後のイベントについて

ノノモリ
記事: 7
登録日時: 2018年2月05日(月) 04:31

ロード後のイベントについて

投稿記事by ノノモリ » 2023年1月19日(木) 16:59

オートセーブ、オートロードを実装したゲームを作成しています。
ゲームを終了する際にオートセーブされるようにしたいのですが、オートセーブ後にゲーム終了のコマンドを入れると、ロード後すぐにゲーム終了となってしまいます。回避する方法があればご教授願います。

●作成してるイベントの内容--------------
プラグインコマンド:Savevommand save1   スロット1にセーブする
スプリクト:                 ゲームを終了する
if(StorageManager.isLocalMode()){
window.close();
} else {
window.open('about:blank', '_self').close();
}
●--------------------------------------------------

プラグインコマンド:Savevommand load1
   ニューゲーム時のマップイベントでスロット1をロードするコマンドを入れています

●--------------------------------------------------
・下記プラグインを使用しています
オートセーブ、オートロード
https://torigoya.hatenadiary.jp/entry/save_command_mv

タイトルスキップ
https://fungamemake.com/archives/9291

・割り込みコモンイベント(トリアコンタン様作)をはじめとするロード後にスイッチをオンにする、コモンイベントを呼び出す、変数を加算する、ロード後の呼び出し場所セーブした場所とは別に指定する、といったプラグインは一通り試しましたが、上記プラグインによるロードの呼び出し後には機能しませんでした。

アバター
まっつUP
記事: 1149
登録日時: 2016年8月11日(木) 15:38
お住まい: タケノコ王国

Re: ロード後のイベントについて

投稿記事by まっつUP » 2023年1月19日(木) 20:29

ノノモリ様
質問内容記載の内、作成してるイベントの内容、がイベントの実行内容である前提で回答します。

◆文章:なし, ウィンドウ, 下
:  :savepre
◆スクリプト:$gameTemp._Tsaveforend = true;
◆プラグインコマンド:SaveCommand save 1
◆条件分岐:スクリプト:$gameTemp._Tsaveforend
◆文章:なし, ウィンドウ, 下
:  :saveafter

:分岐終了
◆スクリプト:$gameTemp._Tsaveforend = false;

勝手ながら閉じる内容は文章の表示に置き換えました。
該当内容は上記のようにセーブ直前でフラグを操作し、これを利用します。
基本的には$gameTempは各セーブデータに含まれないため、ロード直後には該当のフラグの値はなく、上記中の条件分岐では通常通過する場合とロード時で条件が通るかが変わります。該当のフラグの変数名は仮のものですので、一意であるかぎり変更しても大丈夫です。

なお、それぞれプラグイン等のサポートの範疇ではないと思うので
申し訳ないのですがあくまでご自身の責任で、動作確認等お願いします。
見ての通り割と場当たり的な実装なのでもっと良い方法があればそちらを使ってください。
RPGで笑顔を・・・

ツイッター(ツクラーの巣窟)(閲覧は自己責任でお願いします)
https://twitter.com/mattuup

github
https://github.com/mattuup/RPGMakerMZ
ノノモリ
記事: 7
登録日時: 2018年2月05日(月) 04:31

Re: ロード後のイベントについて

投稿記事by ノノモリ » 2023年1月19日(木) 22:14

セーブデータに含まれない変数、、こういうのを待ってました!
試してみたところ無事に動作しました。ありがとうございます。

“MV:質問” へ戻る