コモンイベントからイベント処理の中断をしても
そのまま、中断したいコモンイベントが発生してしまいます
コモンイベントではなく、そのまま記述すれば
ちゃんとイベント処理の中断はしてくれるのですが
なにか、上手くイベントを終わらせる方法など、ないでしょうか?
よろしくお願いします
コモンイベントからイベントを終了させたい
コモンイベントからイベントを終了させたい
- 添付ファイル
-
- bf2809e562989ff715e62d0e0f60c653.png (16.16 KiB) 閲覧された回数 2630 回
-
- 55a7601b7f45c94c820e25423a8b3be8.png (19.89 KiB) 閲覧された回数 2630 回
- Plasma Dark
- 記事: 731
- 登録日時: 2020年2月08日(土) 02:29
- 連絡する:
Re: コモンイベントからイベントを終了させたい
イベントからコモンイベントを呼び出すと、子のインタープリターが生成されて実行されます。
イベントの中断コマンドは、実行中のインタープリターが持つコマンドリストの最後までジャンプする処理になっているため、親インタープリターについては全く干渉しません。
マップ上で実行されている並列処理でないイベントを強制終了するプラグインコマンドを書いてしまう手は考えられます。
イベントの中断コマンドは、実行中のインタープリターが持つコマンドリストの最後までジャンプする処理になっているため、親インタープリターについては全く干渉しません。
マップ上で実行されている並列処理でないイベントを強制終了するプラグインコマンドを書いてしまう手は考えられます。
Re: コモンイベントからイベントを終了させたい
Plasma Dark様Plasma Dark さんが書きました:イベントからコモンイベントを呼び出すと、子のインタープリターが生成されて実行されます。
イベントの中断コマンドは、実行中のインタープリターが持つコマンドリストの最後までジャンプする処理になっているため、親インタープリターについては全く干渉しません。
マップ上で実行されている並列処理でないイベントを強制終了するプラグインコマンドを書いてしまう手は考えられます。
詳しい説明ありがとうございます
なぜ駄目なのか、理解できました
申し訳ないのですが
並列処理でないイベントを強制終了するプラグインコマンドというのは
どういう風にすればよいのでしょうか?
教えて頂いてもよろしいでしょうか?
よろしくお願いします
Re: コモンイベントからイベントを終了させたい
多分欲しい機能はこういう感じですか
頭の体操って感じですけど。
「イベント処理の中断」の代わりに「スクリプト」から上記のコードをコピペすれば動作すると思います。
起点となる処理がバトルイベント、マップ並列イベント、コモン並列イベントの場合は適用範囲外です。
Parentも保存していたらもう少し汎用的になったんですけどねぇ。
コード: 全て選択
// 実行時点で全てのイベント処理を中断する
for(let i = $gameMap._interpreter; !!i; i = i._childInterpreter) i.command115();
「イベント処理の中断」の代わりに「スクリプト」から上記のコードをコピペすれば動作すると思います。
起点となる処理がバトルイベント、マップ並列イベント、コモン並列イベントの場合は適用範囲外です。
Parentも保存していたらもう少し汎用的になったんですけどねぇ。
Re: コモンイベントからイベントを終了させたい
名無し蛙様名無し蛙 さんが書きました:多分欲しい機能はこういう感じですか頭の体操って感じですけど。コード: 全て選択
// 実行時点で全てのイベント処理を中断する for(let i = $gameMap._interpreter; !!i; i = i._childInterpreter) i.command115();
「イベント処理の中断」の代わりに「スクリプト」から上記のコードをコピペすれば動作すると思います。
起点となる処理がバトルイベント、マップ並列イベント、コモン並列イベントの場合は適用範囲外です。
Parentも保存していたらもう少し汎用的になったんですけどねぇ。
回答ありがとうございます
上手くできました
ありがとうございます