久しぶりにテクニック関連の記事を。
誰かがしゃべっている途中でフキダシアイコンを表示させたいと思って、実装してみました。
台詞の途中で向きを変えたり、ジャンプさせたり、あるいはSEを鳴らしたり、といったことは、イベントコマンドで文章の表示の手前に「移動ルートの設定」で、「移動が終わるまでウェイト」のチェックを外して、移動ルートの先頭に適当なウェイトを入れ、方向転換やジャンプ、SEの演奏を入れてやれば、望み通りの動作になるので、よく利用しています。
「移動ルートの設定」で設定可能なものなら、この方法でできるのですが、フキダシアイコンの表示は「移動ルートの設定」ではできないため、別の方法が必要です。
最初は、文章の表示を2つに分ける方法を考えました。1つ目の台詞は末尾に「\^」を付けて、入力待ちをせずに次に進むようにしておいて、フキダシアイコンの表示。それから2つ目の台詞は、1つ目で表示した部分までを「\>」で一瞬で表示させるようにして、途中から通常通りの表示をさせる方法です。しかし、この方法だと、フキダシアイコンを表示する時に、文章ウィンドウが一度閉じられてしまうため、綺麗ではありません。
そこで考えた方法が、スイッチ1つとイベント1つを使って、並列処理させる方法です。
まず、対象となる文章の表示を手前で、スイッチをONにします。そして、新たなイベントを用意し、出現条件はそのスイッチがONの場合、トリガーは「並列処理」にして、実行内容の先頭に適当なウェイトを入れた上で、フキダシアイコンの表示をします。最後にそのスイッチをOFFにして、並列処理が続かないようにします。
これで無事に、台詞の途中でフキダシアイコンを表示させることができました。1つの文章の途中で!や?などのフキダシアイコンを入れられると、感情表現が豊かになっていいですね。
最初から1つの台詞にしないで、複数の台詞に分けてしまえばいいのでしょうが、あまり台詞を短く切るのが好きではないので、こういうことができると助かります。
まあ、普通にプレイしている限りでは一瞬の出来事なので、ほとんど気に留める人はいないかもしれませんが……。