【伺か・里々】3人目以降のキャラを登場させるやり方と注意点

3人目以降のキャラを登場させるやり方と注意点【伺か忘備録・里々メモ】 里々の記述

伺かで3人目、4人目、5人目…と複数のキャラを登場させるやり方の紹介です。
注意点、メリットとデメリットも合わせて説明しておきます。

ざっくりとまとめると、こんなことを知りたい人向けです。

  • 3人目のキャラを一時的に表示させる方法
  • 3人目のキャラをずっと表示させる方法
  • 注意点(自動サーフェス戻し機能がオンになっている時の挙動に関して)

伺かで複数のキャラクターを表示させたくてうなっている誰かのお役に立てたら幸い!

なお、ここで紹介している記述は、里々の栞を使って伺かを作っている人向けです。

3人以上のキャラを登場させる

ゴーストを新しく作るたびに3人目以降を登場させるやり方を調べている気がするので、ここにやり方をガッツリ書いておきます。忘備録も兼ねて。

念のために前置きしておきますと、「3人目以降」の表示ですので、つまり3人以上のキャラクターを登場させるためのやり方をここでは説明しています。
3人以上ですので、3人でも5人でも、好きなだけキャラを登場させてにぎやかにトークさせたい場合に使える方法です。

やり方は2通りある

3人目以降を登場させるやり方には、以下の2通りがあります。

  • 「その起動の間に限り」3人目を表示させる方法
  • 「非表示の指示」が出るまで3人目を表示させ続ける方法

前者は、ゴーストを終了させると、次に起動した時には3人目はいなくなっています。
なので、その起動の間に限り複数のキャラを表示させたい場合は、こちらのやり方でキャラを登場させるといいです。

後者は、起動と終了を挟んでも、3人以降のキャラはずっと表示されたままでいます。
つまり、明確に「非表示の指示」がだされるその時まで、メインや相方のキャラとずっと一緒にそこにい続けます。
なので、メインや相方とずっと一緒にいる立場のキャラクターをもう一人登場させたい場合には、こちらのやり方で表示させるといいでしょう。

なお、以下の説明では便宜上「3人目」と書いてありますが、正しくは「3人目以降のキャラ」です。3人目だけに限りません。
ですので、以下で紹介している同じ書き方を使って、4人目、5人目、6人目……と、何人でも増やすことができます。

何人でも増やせるとはいえ、表示させるキャラクターが増えるにつれ、その分裏で行われる処理も増すということです。

なので、3桁なんかのとんでもない人数を表示させるのはあまりオススメしないでおきます。

では、書き方を説明していきます。

一時的に登場させる方法

まずは「その起動の間に限り」3人目を表示させる書き方を説明します。
その起動の間に限りの表示ですので、つまり終了と起動を挟むと、勝手に3人目がいなくなるタイプの書き方です。

一時的に表示させたいだけのキャラクターや、たまに現れるレアキャラといった扱いのキャラであれば、こちらの一時的に表示させる方法で登場させるのがオススメです。

具体例を挙げると、こういった立場のキャラに使えます。

  • ハロウィンやクリスマスなどの年に1回にしか登場しないキャラ
  • 低確率でたまに現れてはふらっと去っていくキャラ
  • 通行人Aや名のなきワンコ・ニャンコなどの一時的なモブキャラに
  • 自動サーフェス戻しで表情を戻されたくないキャラ

なおこれらはあくまでも例ですので、参考程度にしていただけたら幸いです。

特にモブキャラなどの、人数は多いけどその都度新キャラの枠としてシステム側に登録させるまでもないような存在や、サーフェスで表情が変わらないキャラなどに対して使い勝手がいいです。

メリット・デメリット

一時的に表示させる方法で登場させる際のメリットとしては、以下が挙げられます。

  • 「自動サーフェス戻し」がオンでも、見えない「\p[2]\s[0]」の処理がいちいち入らない(※要れしば)
  • ずっと表示させる必要がないなら、上記の見えない処理が入らないこっちの書き方の方が負担が少ない

一方で、デメリットは以下の点です。

  • 終了させると、次回起動した時はいなくなっている
  • なので、ずーっと表示させたい場合には不向き

メリットデメリットを簡単にまとめると、一時的に表示させるだけであれば使い勝手がいいが、3人で1組のキャラを作りたい場合には使えない、ということです。

それぞれ詳しく説明していきます。

メリット:比較的負担が少ない

一時的に表示させる方法ですと、「自動サーフェス戻し」の機能の影響を受けません

つまりどういうことかというと、「自動サーフェス戻し」がオンの状態であっても、「\p[2]\s[0]」の処理がいちいち入りません。

ですので、この書き方であれば、例え大人数になったとしても比較的負担をかけずに複数のキャラを表示させることができるかもしれません。

たくさんのキャラクターを同時に表示させたい場合、それが一時的なものであるのなら、処理が少なくて済むという理由からこちらの書き方を採用するのがオススメです。

また、「自動サーフェス戻し」をオンにしている状態でも、サーフェスを自動で戻してほしくないという存在のキャラに対してもこの書き方が使えます。

なお、「\p[2]\s[0]」の処理はれしばがないと見えないです。

というのも、「\p[2]\s[0]」という記述は、裏で行われる処理のひとつだからです。自分で書いた辞書にはないもののはずです。
この処理が実際に行われているのを自分で確認したい場合は、れしばを導入してみてください。

デメリット:一時的な表示である

デメリットとしては、やはり一時的な表示であるということでしょう。
一時的な表示であるから、自動サーフェス戻しの影響を受けないのだとは思われますが。

一時的に表示させる方法で登場させたキャラは、終了を挟むと、次の起動時には消えた状態になっています。
つまり、呼び出しを受けて、3人目が表示された「現在の起動時」のみ表示され続ける存在になります。

こういった特徴があるので、例えばストーリー進行や重要なトークの進行に関わるなどの重要な立ち位置のキャラは、この方法では登場させないほうが良いでしょう。
表示されるべき選択肢が表示される前に終了させられた場合、ストーリーが進行不可になってしまう、なんてことになりかねません。

次に起動した時にはすでに消えた状態で起動されるため、起動と終了を何度繰り返しても3人目はずっと表示されていてほしいといった場面には不向きな書き方になります。

あくまでも、一時的な表示である・終了を挟むと消えてしまうという点を把握した上で使うといいでしょう。

表示させる書き方

以下のように書くと、「その起動に限り」3人目を登場させることができます。

*3人目を登場させる
:私はメイン側。今日は3人目を連れてきたよ。
:オレは相方側だよ。
\p[2]\s[20]こんにちは。僕は3人目のキャラだよ。
\p[0]やあやあよく来たね。私はメインだよ。
\p[1]はじめまして!オレは相方側だよ。
\p[2]ちっすちっす。

このように書けば、「その起動の間は」ずっと3人目が表示されるようになります。

なお、里々の「自動サーフェス戻し」をオンにしている状態でも、3人目は消えずにそこにいてくれます。

自動サーフェス戻しに影響されていないことがわかりますね。

試しに上記の記述をコピペして動作を確認してみたい場合は、20番のサーフェスをフォルダ内に用意した上で動かしてみてください。
というのも、上記の記述では番号20番のサーフェス画像を3人目として登場させるように書いてあるからです。

記述の解説

上記の記述のポイントとなる部分を解説しておきます。

以下の部分が、3人目のキャラを登場させるための命令です。

\p[2]\s[20]

\s[20]の「20」の数字には、3人目のキャラクターとして表示させたいサーフェス番号を入れてください。
ここでは20番のサーフェスを3人目として表示させるように書いてあります。

伺かを作り始めたばかりの方向けに説明しておくと、\p[2]や\s[20]などは「さくらスクリプト」というものです。

この2つのさくらスクリプトの役割をさくっと説明すると、以下のようになります。

  • \p[2]はしゃべり手を変えるもの
  • \s[20]は今のしゃべり手のサーフェス(画像)を変更するもの

このさくらスクリプトについて、もっと詳しく説明します。(自分が絶対わすれるので)
説明いらないよという人は、ちょこっと先まで読み飛ばしてください。

\p[2]はしゃべり手を変えるもの

まずは\p[2]について。
これは「スコープを変える」ためのさくらスクリプトです。

スコープを変えるとは、分かりやすく言うと「喋るキャラクターを指定する」ためのものです。
UKADOCでは「スコープコマンド」という部類としてまとめられています。

例えば里々の場合、メインと相方の2人しかいない時は、コロン記号「:」を使ってトークの掛け合いを書いていきます。
しかし、3人目、4人目…とキャラを登場させる場合は、コロン記号だけでは誰がしゃべるのかを指定できません。

そこで、スコープコマンド\p[2]を使い、「今からこの番号のキャラがしゃべるよ!」と指定してあげるというわけです。

スコープコマンドは、\p[2]以外にも以下のように書くこともできます。

キャラクター 使えるスコープコマンド
メイン側(サクラ側) \0 \h \p[0]
相方側(ケロ側) \1 \u \p[1]
3人目 \p[2]
4人目 \p[3]

上記では4人目までしか書いてませんが、5人目、6人目……と増やす場合は\p[2]の数字を\p[6]、\p[7]……などと、どんどん大きくしていけばいいだけです。

メイン側と相方側のキャラに関しては、\p[0]といった書き方以外にも\0や\hのように書くこともできます。
ですので、全てを\p[0]に統一してもよし、\0と短く書いてもよし、というわけです。

ここらへんは作り手のお好みで。

\s[20]で今のしゃべり手のサーフェスを変更する

お次に\s[20]というさくらスクリプトについて。
これは、「現在のスコープ側のサーフェスをこの番号のサーフェスに変更する」ためのものです。

どういうことなのか分かりやすく言うと、「今しゃべっているキャラの画像(サーフェス)を変更するもの」です。
なお「現在のスコープ側」というのは「今現在、しゃべっているキャラ」のことを指します。

例えば里々では、表情を変更したいときには以下のように書くと思います。


:(1)オハヨー!
:(4)そうだね
:(0)うん。

この(1)などは、つまり\s[1]と書いていることと同じ意味になるのです。

(1)と\s[1]の違いは、以下の通りです。

  • (1)は里々で用意された里々のしおり専用の記述
  • \s[1]はさくらスクリプトによる記述で、どのしおりを使っていても使うことのできる記述のひとつ

ですので、里々ではない辞書を使ってゴーストを作っている場合でも、\s[1]という同じ書き方でもって表情を変えることができるというわけです。

まとめ

これまでの解説をまとめておきます。

  • \p[数字]は、「今しゃべるキャラ」を変更するもの
  • \s[数字]は、「現在しゃべっているキャラ」の画像を変更するもの

ですので、以下のように書くことで、「3人目のキャラクターとして、サーフェス20番の画像を表示してね」といった指示を出していることになります。

\p[2]\s[20]こんにちは。僕は3人目のキャラだよ。

これが、一時的に3人目を登場させる書き方の仕組みといいますか、中身の部分になっています。

ちなみにこれは、4人目や5人目を登場させたい時も同じ書き方で登場させることができます。

4人目や5人目を登場させる場合

例えば、先ほどの記述に引き続き、4人目や5人目を登場させる場合は以下のように書けます。

*
\p[3]\s[25]こんにちは。あたしは4人目のキャラよ。
\p[4]\s[31]こんばんは。ワシは5人目のキャラ。

上記のように書くと、4人目のキャラとしてサーフェス25番の画像を表示し、5人目のキャラとしてサーフェス31番の画像を表示する、といった指示を出していることになります。

数字に気を付ける

気を付けたい点としては、スコープコマンド\p[2]に書く数字が1つ小さい方へズレ込んでいる、ということでしょうか。

例えば、3人目にしゃべらせたい!と思ってうっかり\p[3]と書くと、「4人目(4番目)のキャラ」にしゃべらせている、ということになってしまう、というわけです。

本来の3人目のキャラに対するコマンドである「\p[2]」を一切使わないと決めてトークを書いている場合は、上記のように書いたからといって困ることもないとは思いますが……。
つまり、自分のルールとして「3人目を登場させる時は\p[3]と書こう!」などと決めてしまうということです。

数字が紛らわしく感じる場合は、こういった対策もアリかもしれません。

3人目を非表示にする書き方

上記の「その起動の間に限り」3人目を表示させる書き方で3人目を登場させた時は、以下のように書くと「その後ずっと3人目を非表示にする」ことができます。

*3人目を非表示にする
:3人目、そろそろ帰っていいよ。
\p[2]わかったよ。ばいばい。\b[-1]\s[-1]
\p[1]3人目くん、まったねー!

これは、以下の2つのさくらスクリプトで、3人目の非表示を行っています。

\b[-1]\s[-1]

軽く説明しておくと、\b[-1]は、「現在喋っているキャラ」のバルーン(吹き出し)を非表示にするためのものです。
\s[-1]は、「現在喋っているキャラ」のサーフェス(画像)を非表示にするためのものです。

3人目に限らず、相方側でも4人目のキャラであっても、このように「-1」と書くことで、「現在喋っているキャラ」に対してバルーンやサーフェスなどを非表示にさせることができます。

永続的に表示状態にする方法

次に「3人目のキャラクターをずっと表示させる書き方」を説明します。

こちらの書き方では、起動と終了を挟んでも3人目が消えてしまうことはありません
メイン側と相方側のキャラクターと同じように、ずっとそこにい続けます。

つまり、非表示にするという明確な命令が入らない限り、ずっと表示され続けます。

こちらの書き方のメリットとして挙げられるのは、以下の点です。

  • 終了と起動を挟んでも消えることがない
  • 起動と終了を挟んでもいてほしい理由がないなら、こちらの方法で書く必要はない

デメリットとして挙げられるのは、以下の点です。

  • 「自動サーフェス戻し」がオンの場合、見えない「\p[2]\s[0]」の処理が毎回入る(※要れしば)
  • 透過させても、上記の見えない処理が入り続ける(※要れしば)
  • 上記の見えない処理をやめさせたい場合、場合によってはゴーストの再起動が必要になる

表示させ続ける書き方

以下のように書くと、「永続的に」3人目を登場させることができます。

*3人目を登場させる
$デフォルトサーフェス2【タブ】20
:私はメイン側。今日は3人目を連れてきたよ。
:オレは相方側だよ。
\p[2]\s[20]こんにちは。僕は3人目のキャラだよ。
\p[0]やあやあよく来たね。私はメインだよ。
\p[1]はじめまして!オレは相方側だよ。
\p[2]ちっすちっす。

この書き方の一番のポイントは以下の部分です。

$デフォルトサーフェス2【タブ】20

この1行が存在するかしないかが、先に紹介した「一時的に表示させる記述」との唯一の違いです。

この1行を追加した場合は、起動と終了を挟んでも3人目がいなくならなくなります
先ほどと同じように、「20」という数字は、3人目のキャラクターとして表示させたいサーフェス番号に書き換えてくださいね。

ちなみに、「$デフォルトサーフェス2【タブ】20」を実行した直後は、まだサーフェス画像は表示されません。
以下の台詞部分が表示されるタイミングで、3人目が出現します。

\p[2]\s[20]こんにちは。僕は3人目のキャラだよ。

非表示にする方法

「$デフォルトサーフェス2【タブ】20」と書いて3人目を登場させた場合、キャラを非表示にさせる方法は2通りあります。
というのも、これはデフォルトサーフェスを指定して3人目を表示させる書き方だからです。

ですので、「デフォルトサーフェス戻し」という機能を使っているか、使っていないかで、どちらの方法で3人目を非表示にさせるかを選んでください。

「デフォルトサーフェス戻し」がオフの場合

まず、「デフォルトサーフェス戻し」がオフの場合。

オフの場合は、以下のように書いて3人目を非表示にさせることができます。

*3人目を非表示にする
:3人目、そろそろ帰っていいよ。
\p[2]わかったよ。ばいばい。\b[-1]\s[-1]
\p[1]3人目くん、まったねー!

この場合、里々の「デフォルトサーフェス戻し」がオフ、つまり無効の状態になっている場合は、3人目を非表示にすることができます。

しかし、「デフォルトサーフェス戻し」がオンになっていた場合は、上記の書き方では、次のトークがはじまる時にはまた3人目が表示されてしまいます。

「デフォルトサーフェス戻し」がオンの場合

「デフォルトサーフェス戻し」がオンになっている場合は、以下のように書いて3人目を非表示にさせる必要があります。

*3人目を非表示にする
$デフォルトサーフェス2【タブ】21
:3人目、そろそろ帰っていいよ。
\p[2]わかったよ。ばいばい。\b[-1]\s[-1]
\p[1]3人目くん、まったねー!

「デフォルトサーフェス戻し」がオフの場合と違う箇所はどこかというと、3人目の「デフォルトサーフェス」のサーフェス番号を変更しているという点です。

つまり、下記の部分ですね。

$デフォルトサーフェス2【タブ】21

なお、ここでいうサーフェス21番には、「透過画像」が紐づけされているものとします。

つまり、3人目を非表示にさせるために透過画像を用意する必要があるということです。

「自動サーフェス戻し」がオンになっている場合は、このように「3人目のデフォルトサーフェス」自体を見えない画像、つまり透過画像にする必要があるのです。

「着せ替え」という選択肢について

念のために前置きしておくと、ここからは全て個人的な意見ですし、勘違っている可能性だって大いにあります。
そこらへんを踏まえたうえで、参考程度にどうぞ。

着せ替えか3人目かの比較

例えば小物やちょっとした動物のキャラクターを登場させたいと思った時に、「着せ替えとして表示・非表示させるか?」「それとも3人目のキャラクターとして表示・非表示させるか?」と考えることもあるハズです。

ざっくりとした結論から言うと、以下の要素を求めるのであれば、着せ替えではなくちゃんと「3人目」として登場させた方がいいでしょう。

  • 画面をあちこち好きに移動させたい
  • しゃべらせたい
  • 重なり判定をつけたい

一方で、以下の要素を求めるのであれば、「着せ替え」として登場させるのがいいです。

  • 表示位置を絶対固定にしたい
  • その小物に対してメインや相方にアニメーションをさせたい
  • キャラクターのアニメーションに連動させて動くようにしたい

要は、重なり判定をつけたいのであれば3人目として登場させるが、アニメーションを連動させたいのであれば着せ替えとして表示させる、ということです。

それぞれ詳しく説明していきます。

共通でできること

まずは、どちらの方法であっても、共通して行えることをまとめておきます。
つまり、3人目として登場させる場合でも、着せ替えの一部として登場させる場合でも、どちらにしたとしても行えることです。

  • 当たり判定をつける
  • アニメーションさせる(火をつけたり消したりのアニメも、どちらでもつけれる)
  • 表示・非表示の状態によって、ゴーストにトークをさせる

上記に挙げたこと以外でも、大体のことは、着せ替えと3人目どっちにしたとしても、行うことができるハズです。

アニメーションを連動させたい場合は着せ替え

例えば、小物として「お鍋」を表示させたいと考えたとします。

このお鍋をクリックすると、キャラクターが反応して「どこからか木べらを取り出してお鍋の中身をかき混ぜだす」といったアニメーションを付けたい場合。
この場合は、着せ替えにした方が楽なはずです。

一方で、そうではなくて、お鍋をキャラの頭にのっけて重なり判定で遊んだりしたい場合。
この場合は、お鍋を3人目のキャラクターとして表示させるしかありません。

というのも、お鍋を3人目として登場させたら、「お鍋は頭にのせるものではありません!」みたいな重なり判定トークを書くことができるからです。
着せ替えでお鍋を表示させた場合は、重なり判定をつけることができません。

もうひとつ例を挙げて考えてみましょう。
例えば、動物の「ひよこ」を表示させたい場合を例として考えてみます。

メイン側のキャラクターは、立ち上がったり座ったりのアニメーションをするゴーストだとします。
そして、これに対して「ひよこはメイン側のキャラの肩にのっけておきたいなぁ」と考えたとします。

この場合は、着せ替えとしてひよこを登場させるのがいいです。
というのも、着せ替えは、キャラクターのアニメーションに連動させて動かすことができる書き方があるからです。

着せ替えではなく、3人目のキャラとしてひよこを登場させたのでは、できなくはないのかもしれませんが……着せ替えの方が楽にできるハズ、です。

移動させたい場合は3人目として

一方で、アニメーションに連動させる必要はなく、「せっかくのひよこなので、ユーザーさんにパソコン画面の好きな場所に置いてもらえるようにしよう」と考えた場合。
この場合は、3人目としてひよこを登場させるのがいいです。

というのも、着せ替えは個別に動かすことができないためです。

また、ひよこにもバルーン(吹き出し)を表示させてしゃべらせたいぞ!と思った場合にも、3人目として登場させるのがいいです。

3人目として登場させるのであれば、バルーンを追加して「ひよこ専用のバルーン」でひよこにしゃべらせることだってできます。
これは、着せ替えでひよこを登場させる場合にはできないハズです。

コメント

タイトルとURLをコピーしました