1 default 2 { 3 changed(integer change) 4 { 5 if (change & CHANGED_LINK){ 6 key agent = llAvatarOnSitTarget(); 7 if(agent){ 8 } else { 9 } 10 } 11 } 12}
アバターがオブジェクトに座ることを検知するイベントがlslには
ありませんので、 上記のようなコードで擬似的に座ったことを検知します。
3行目でオブジェクトの状態変化を検知しています。
5行目ですが、これは論理式でchange 引数のなかのオブジェクトのリンク
数が変動した場合にセットされるビットを取り出しています。
わからない場合には、5行目のif文が、オブジェクトのリンク数が変わった
場合にtrueになると思ってください。
次に7行目ですが、6行目で取得した座っているアバターのkey を
確認しています。
リンク数が変動した場合に、座っているアバターのkeyを取得して、取れたら
座った、取れなかったら立ち上がったと判断しています。