ゴースト切り替え。ゴーストチェンジ!
OnGhostChangingとOnGhostChangedイベント時に、(R0)に交代するゴーストのsakura nameが入ります。
これを利用して、交代するゴーストがゴースト製作者の知っているゴーストだった場合、それぞれのゴーストに合ったトークを発生できます。
*OnGhostChanging >他のゴーストへ変更 *他のゴーストへ変更 >(R0)へ変更 :(R0)さんへ交代します。 *ポストへ変更 :はがきを預かってもらおうっと。
*OnGhostChanged >他のゴーストから変更 *他のゴーストから変更 >(R0)から変更 :(R0)さんから交代しました。 *ポストから変更 :今すれ違ったけど、今日も真っ赤でした。
*他のゴーストから変更 ≫(R0)「(R1) >(R0)から変更
と、記述しておく。
*○○「 ××× :おのれ○○、×××とはどう言う意味だっ! :落ち着けっ!
○○は特定ゴースト名。
descript.txtでsakura.nameに記述されている名前。
×××は取得したいメッセージ。
特定ゴーストが自ゴーストに対して特殊メッセージを持っていたり
特徴的な台詞を吐く場合にそれに反応したい場合の記述方式でつ。
特定のゴーストの中からランダムに交代します。
特定のゴーストが存在しなければ、全ゴーストの中からランダム交代します。
* :テンプレートゴーストさんはいるかな? (loop、こうたい、3)\![change,ghost,random] @こうたい \![change,ghost,(栞ゴースト)] @栞ゴースト ポストと狛犬 紺野ややめ wish ~ 華和梨テンプレート
「name」と「sakura.name」が一致しないと上手くいかないようです。
切り替え出来ないゴーストも存在する旨をユーザさんに伝えるようにした方が良いかも。
交代できなかった場合の台詞はスクリプトの後ろに書きます。必要なければ省略。
SSPの場合は\![change,ghost,lastinstalled]を使った方が良いです。
(if、(Sender)==SSP、\![change,ghost,lastinstalled]、\![change,ghost,(R1)])
とすると名前に「、」が入っているゴーストではエラーを吐くので「>」で飛ばして分けた方が良さげ。
*OnInstallComplete >(R1)をインストール >ゴーストインストール【タブ】(compare,(R0),ghost) :(R1)/(R0)をインストールしました。
*ゴーストインストール :(R1)に交替します。 >ゴーストインストール(Sender) \![change,ghost,(R1)]‥‥おや、交代できませんでした。 *ゴーストインストールSSP \![change,ghost,lastinstalled]‥‥おや、交代できませんでした。
*OnInstallComplete >(R1)をインストール >ゴーストインストール【タブ】(compare,(R0),ghost) :(R1)/(R0)をインストールしました。
*ゴーストインストール $新規ゴースト【タブ】(R1) :(R1)/(R0)をインストールしました。 交替しますか? _交替する _交替しない *交替する :交替します。 >ゴーストインストール(Sender) \![change,ghost,(新規ゴースト)] ‥‥おや、交代できませんでした。 *ゴーストインストールSSP \![change,ghost,lastinstalled]‥‥おや、交代できませんでした。 *交替しない :では、このままで。
*OnInstallComplete >ゴーストインストール完了【タブ】(compare,(R0),ghost) :(R1)/(R0)をインストールしました。 *ゴーストインストール完了 $インストールゴースト名【タブ】(R1) :ゴースト「(インストールゴースト名)」をインストール完了 どうしますか? _呼び出す【タブ】速攻ゴースト呼出 _交代する【タブ】速攻ゴースト切替 _何もしない【タブ】速攻ゴースト何もしない *速攻ゴースト呼出 :(インストールゴースト名)さんを呼び出します\_w[1000] \![call,ghost,lastinstalled] *速攻ゴースト切替 :(インストールゴースト名)さんに交代します\_w[1000] \![change,ghost,lastinstalled] *速攻ゴースト何もしない :何でインスコしたかなー