使っているバルーンによって分岐が必要になる時に。
ていうか内容は現在のシェル名を取得するのパク…もとい似たような感じです。
ただしイベント名やプロパティ名の名前の規則が違うのでちょっと注意?
現時点では里々に使用中のバルーン名を取得する機能は備わっていません。
なので、SSPの機能を利用して、使用中のバルーン名を得る事になります。
以下は、いずれも変数(現在のバルーン)に使用中のバルーン名を格納する方法の例です。好みで選択して下さい。
いずれかの方法で値を保存したら、後は分岐する箇所で(現在のバルーン)を使用して下さい。
SSP専用。起動時などにNotifyで通知されます。
Notifyイベントなのでトークはできませんが、逆に言えば変数処理を行うにはうってつけのイベントです。
*OnNotifyBalloonInfo $現在のバルーン【タブ】(R0)
バルーンの変更を完了した時に通知されるイベントです。
*OnBalloonChange $現在のバルーン【タブ】(R0)
SSPのプロパティシステムを使い、任意のタイミングで変数に記録します。
例として以下の一つ目のスクリプトを情報更新したいタイミングに配置し、
二つ目のOnGetBalloonNameトークはいずれかの辞書内に記述をしておきます。
\![get,property,OnGetBalloonName,currentghost.balloon.name]
*OnGetBalloonName $現在のバルーン【タブ】(R0)
このトークでは変数の制御のみ行っているので、イベントが上書きされず安心です。
現実的にはすぐに使いたい時にこそ更新したいでしょうから、その場合はraiseを使ってタイミングを制御します。以下例。
*ランダムトーク \![get,property,OnGetBalloonName,currentghost.balloon.name] \![raise,使いたいセクション] *使いたいセクション >SSPデフォルトバルーンを使っている【タブ】(equal,(現在のバルーン),SSPデフォルト+) :いつもと違うバルーン。 *SSPデフォルトバルーンを使っている :万人のためのバルーン。 *OnGetBalloonName $現在のバルーン【タブ】(R0)
*0Headつつかれ【タブ】(equal,(現在のバルーン),SSPデフォルト+) :よーし幅いっぱい取って喋っちゃうぞ。
…といってもシェル名の取得と違ってタイミングは少ないので、下記のようにしておくだけで困ることはないでしょう。
すぐに値を更新したい時は上記のプロパティシステムがおすすめ。
*OnNotifyBalloonInfo $現在のバルーン【タブ】(R0) *OnBalloonChange $現在のバルーン【タブ】(R0)