ptextのテキストをマクロで制御するテクニック【ティラノスクリプト】

「ptextのテキストをマクロで制御するテクニック【ティラノスクリプト】」のアイキャッチ画像

皆さん、こんにちは!ノベルゲーム制作、楽しんでますか?

ティラノビルダーでゲームを作っていると、 [ptext] タグでセリフをたくさん書くことになりますよね。
でも、同じようなセリフを何度も書いたり、ちょっとだけ違うセリフを何度も書いたりするのって、結構面倒じゃないですか?

そこで今回は、 マクロと変数を使って ptext のテキストを効率的に管理するテクニック をご紹介します!

この方法を使えば、

  • 同じセリフを使い回すのが楽になる!
  • 条件分岐でセリフを簡単に切り替えられる!
  • 後からセリフを修正するのが簡単になる!

など、たくさんのメリットがあります。

ぜひ、この記事を参考にして、ゲーム制作を効率化してくださいね!

通常メッセージとは別にテキストを表示する[ptext]タグ

ノベルゲームやアドベンチャーゲームを作っていると、通常のメッセージとは別にテキストを表示させたいことが多々あります。
たとえば、「30階」のように現在のいる場所を表示したり、「所持金:3000G」のようにステータスを表示させたりすることがよくあります。

通常のメッセージとは別にテキストを表示する場合、ティラノスクリプトでは、 [ptext] タグを使うのが便利です。

例えば、

[layopt layer=1 visible=true]
[ptext layer=1 x=100 y=200 color=yellow text=こんにちわ! size=30 bold]

と書くと、座標x:100、y:200の場所に、黄色の太字で「こんにちは!」というテキストが表示されます。
[ptext] タグはレイヤーの指定が必須のようなので、 [ptext] タグの前に[layopt]タグでレイヤーを指定しています。

[画像:ptextタグでテキストを表示させた]

このように、メッセージとは別にテキストを表示する [ptext] タグはとても便利です。

マクロと変数で[ptext]タグをさらに便利に!

[ptext] タグはとても便利ですが、現在地を表示するために繰り返し同じ記述をしていったのに、あとから仕様が変更になった……なんてことになってしまったら困りますよね。
これまで記述した[ptext] タグの設定を、いちいち修正しなくてはならなくなります。

こうした問題を解決するために、マクロと変数を活用しましょう。

変数にセリフを格納しておき、マクロでその変数の値を [ptext] タグに渡すことで、セリフを動的に変更することができます。

マクロの作成方法

具体的なマクロの作り方を見ていきましょう。

[macro]タグを作成する

[画像:first.ksにマクロの記述をする様子]
first.ksの「live2D対応」の下に、マクロのコードを書いてみよう

「マクロ」とは、ある処理をまとめたものを1つのタグで呼び出せるようにできる機能です。
RPGツクールでいうところの、「コモンイベント」に近い機能かもしれません。

このマクロを使う場合は、[macro]タグで呼び出したいコードを囲います。
そして、公式ページが推奨するように、この記述をfirst.ksの最初に記述しておくと、その他のページでマクロを呼び出すことができます。

今回は下記のコードを記述しました。

;macro定義
[macro name=tate]
    [ptext layer=1 x=100 y=200 color=yellow text="%text" size=30 bold]
[endmacro]

これで以下のような設定ができました。

  • tateという名前のマクロを定義[macro]タグにname属性をつけることで、マクロの名前を定義することができます
  • textという変数でptextのテキストを管理:パラメータの値の先頭に%を付けると、マクロに渡されたパラメータの値を流用できます。

定義したマクロを呼び出そう!

マクロの定義が終わったら、テキストを表示させたいシナリオのファイルを開き、マクロを呼び出します。
たとえば、「うまくいったかな?」というテキストを表示させる場合は、下記のコードを記述します。

[layopt layer=1 visible=true]
[tate text="うまくいったかな?"]
[画像:macroタグでテキストを表示させた]

マクロを呼び出すときは、[macro]タグのname属性に記述した文字を書くだけで大丈夫です。
先ほどの例では、「tate」という名前を付けたので、[tate]という記述だけでも、マクロを呼び出すことができます。
ただし、今回は定義したマクロの中に変数が含まれているので、変数を引き渡さなければなりません。
マクロに変数を引き渡す場合は、[tate text="うまくいったかな?"]のように記述します。

これで共通して使うptextタグの設定を1つのマクロに定義し、変数を引き渡すことでテキストを変えられるようになりました!

まとめ

今回は、マクロと変数を使って ptext のテキストを動的に変更する方法をご紹介しました。

この方法を使えば、セリフの管理が効率化され、ゲーム制作がよりスムーズになります。

ぜひ、この記事を参考に、マクロと変数を活用してみてください!

参考