こころ

このベイビーでは、μ'sモードとAqoursモードを切り替えることが出来るようにしています。


このように、別モードを実装する方法を紹介します。




~ 変数の用意 ~




まず、モード切り替え用の変数を用意します。
ベイビーの設定ページから、変数設定のタブを表示します。


そこで、モード切り替え用の変数を作ります。
分かりやすいように、『モード』 という名前の変数を作るとします。
初期値は、初期状態のモードを表す文字列や数字を設定しておきます。


以外と知られていないかも知れませんが、実は変数名は日本語も普通に使用できます。




変数名:モード
初期値:μ's
コメント:別に書かなくても良い




例えば、↑のように変数を作ったとします。


この場合、ベイビーに最初に訪れた時、『モード』という変数に「μ's」という文字列が入った状態になります。
つまり、初期状態は「μ's」というモードになっていることになります。


ここで変数に入れる文字や数値は、意図的に見れるようにしない限りはベイビーを見ている人には見えないので、管理する側が分かりやすいようにしておくのが良いと思います。


ちなみに、コメントは後から何の変数だったかが分かるようにしておくためのものなので、空欄でも問題はありません。





~ モード別ワードの登録 ~




ワード登録をする時は、モードによってヒット出来るか出来ないかの設定をする必要があります。


変数欄に↓のような設定をします。




if モード = μ's




『モード』は変数を作成してあるので、「任意の言葉」となっている部分をクリックして、『モード』に変更できるようになっているはずです。


「μ's」は、「任意の言葉」のまま、その横にある入力ボックスの中に文字を入力します。
こうすることで、このワードは『モード』という変数の中が「μ's」の時にだけワードがヒットするようになります。


通常のワードだけでなく、RA(ランダムアンサー)もモード別に表示させたい場合は、同じように変数欄を↑のように設定します。


このif が設定されていないワードは、モードによる条件が無いということなので、全てのモードでヒットすることになります。





~ モード切替ワード ~



モードを切り替える時は、変数欄に↓のように設定します。




set モード = Aqours




↑のように設定されたワードがヒットすると、『モード』の変数の中身が「Aqours」に変わります。


set はifとは違い、= の左側の変数の中身を = の右側の文字列に上書きするというものです。


このsetの処理は、ワードがヒットした時に実行されます。
ワードがヒットしなかった場合はsetの処理は実行されません。





モードが「Aqours」に変わると、 if モード = μ's と変数欄に設定されているワードはヒットしなくなります。


その変わりに、if モード = Aqours と設定されたワードがヒットできるようになります。





~ 実装例 ~




実際の例をあげるとこんな感じです。


↓のようにワードが登録されているとします。





キーワード:おはよう
変数欄:if モード = μ's



キーワード:おはよう
変数欄:if モード = Aqours



キーワード:【μ'sモード】
変数欄:set モード = μ's



キーワード:【Aqoursモード】
変数欄:set モード = Aqours





『モード』の初期値が「μ's」に設定した場合
初期状態でベイビーに「おはよう」と話しかけた時
①のワードがヒットします。
②は絶対にヒットしません


【Aqoursモード】と話しかえると
④のワードがヒットします。
ifの設定が無いので、『モード』がどの状態であってもヒットできます。
set により、『モード』が「Aqours」に上書きされます。


もう一度「おはよう」と話しかけると
今度は②のワードがヒットします。
①のワードはヒットしなくなります。


【μ'sモード】と話しかえると、③のワードがヒットして、『モード』が「μ's」になり、初期状態と同じ状態になります。


「おはよう」と話しかけると、①のワードが再びヒットするようになり、②のワードはヒットしなくなります。




名前:小泉 花陽

おかわり293杯目

おかわり!