地味だけど、とてもありがたいTIPSを発見。先日加入したツクールWEBフォーラムの記事です。

【ルート移動ウェイト】
イベントコマンドでスクリプト:this.setWaitMode(‘route’) と入れると、移動ルートの強制の「☑完了までウェイト」の効果を後付けすることができます。つまり、歩きながらしゃべらせつつ、会話が終わったらちゃんと移動終了まで待つ、などができます。
とありましたが、一読よくわからなかったので、実地検証。

主人公がお堀端を歩きながら、

てなことを思って、なおも歩いていくと

知り合い(浪人)に出くわす、というシチュエーション。

これを実現するには

  1. [移動ルートの設定]で8歩ほど左に移動しながら([完了までウエイト]を有効にしていない)
  2. [文章の表示](美しい松並木だな)を実行して
  3. さらに[文章の表示]「これは、同心様」を実行する

ところが、実際にこれを動かしてみると、Enterキー押下のタイミングによっては、こんなになってしまいます。

おいおい、誰と会話してるんだ?

[移動ルートの設定]で[完了までウエイト]にしていないため、後続のコマンドが立て続けに実行されてしまうのです。

[移動ルートの設定]で[完了までウエイト]を有効にすれば、浪人と顔を合わせたタイミングで「これは、同心様」とできそうですが、そうすると今度は、移動しながらの文章表示(美しい松並木だな)が不可能に。

そこで、こうします。

スクリプト[this.setWaitMode(‘route’);]は、後付けで[移動ルートの設定]の[完了までウエイト]を有効にできます。この結果、「これは、同心様」は移動完了した直後の表示となり、もくろみどおりの動きを実現できました。