リファレンスとは、イベントが通知されるときについてくる情報のこと。
下記の説明を参照。
どんなイベントやリファレンスがあるかはこちらを参照して下さい。→Ukadoc SHIORI Eventリスト
(R○)
(Reference○)
上記のどちらかの記述でイベントのリファレンスを取得できます。
R0,R1,R2...と続く。R○と半角で書いたり、Reference○の書き方でもOK。
用途は主に、イベント対応トークを作るときに、イベントの情報などを取得します。
(Rの数)でいくつR○があるか調べることが可能。
イベントは、色々なユーザの操作、または時間経過で通知されます。
例えば、マウスがシェル上でシングルクリックされればOnMouseClickイベントが通知されますし、1秒経過するごとにOnSecondChangeイベントが通知されます。
リファレンスというのは、上記のイベントの時に教えてくれる情報です。
例えば、マウスがダブルクリックされた時のイベントOnMouseDoubleClickでは、R3に突かれたキャラクター、R4にその部位が入っています。
サンプルゴーストの「Rポストと狛犬」には以下の記述があります。
*OnMouseDoubleClick >(R3)(R4)つつかれ ()
上記のスクリプトでは、もし(R3)が「0」(本体側)で、(R4)の部位が「head」の場合、「0headつつかれ」にジャンプします。
同様に、(R3)が「1」(相方側)で、(R4)の部位が「」(空欄。部位が設定されていない部分)なら、「1つつかれ」にジャンプします。
このようにして、つつかれトークが呼び出されています。
対応するトークがない場合は、上記のジャンプが無視され、()でランダムトークが呼び出されます。
このR○は、ベースウェアが伝えてくるイベントのたびに、中身がまるごと書き換わります。
例として、「ゴーストの切り替えが行われた」時はOnGhostChangedが発生し、R0は本体側の名称、R1は切り替わるときに喋っていた内容、R2はゴーストの名前に書き換わります。
#On~で始まるイベントは、大抵SSPから通知されたイベント #この時にR○がセットされる *OnGhostChanged >交代トーク #ジャンプや括弧展開しても、R○は保存されている *交代トーク :(R0)さんから交代しました。 #以下のように、採用条件の部分にR○を使ってもOK #この場合、普通の切り替えなら上のOnGhostChangedのみ、 #Rポストと狛犬から切り替えると上下2つのうち、どちらかがランダムで選ばれる *OnGhostChanged【タブ】(R0)==ポスト :あ、そういえばポストに手紙出してくるの忘れてた!
(R0)と書いた時に、本体側の名前が入るのはOnGhostChangedのみで、他のイベントでは違う内容がセットされなおします。
以下のOnBalloonChangeでは、(R0)には変更したバルーンの名前が入っています。
*OnBalloonChange >(R0)に切り替わった :(R0)ってバルーンに切り替わったよ。 *SSPデフォルト+に切り替わった :やはりデフォルトは落ち着く……。
一部は里々がこっそり処理してくれていることがあり、何のイベントのR○か分かりづらいこともあります。
例えば、なでられ反応のイベントはサンプルゴースト「Rポストと狛犬」内にはジャンプ元が見当たりませんが、実は里々が内部で色々処理しています。
OnMouseMoveが一定回数通知されるたびにジャンプしているため、OnMouseMoveのR○がセットされています。
もちろん、OnMouseMoveを自分で辞書に記述することも出来ます。
辞書に*OnMouseMoveが記述されている場合は、なでに関する里々内部の処理が行われなくなります。
#実はOnMouseMoveから呼ばれている *0headなでられ :これは……(when、(R6)==touch 、タッチパネルだと言うのか!? 、マウスカーソルで撫でているな!? ) *0headなでられ【タブ】(R6)==touch :いやー、タッチパネルでされる頭なではやはり違いますな。 時代を感じますわ。
また、さくらスクリプトのraiseを使えば、オリジナルのSHIORI Eventを作ったり出来ます。
* :raiseっていうさくらスクリプトを使えば、 自分でイベントを作ってSSPに通知させることも可能だよ。 かならず頭は「On」で始めること! \![raise,OnマイすぺしゃるSSPイベント,SSP,里々,仲良し] *OnマイすぺしゃるSSPイベント #SSPと里々は仲良し!と表示される :(R0)と(R1)は(R2)!