LSL(Linden Script Language)スクリプトTips集

センサーを使う

以下のスクリプトでは、オブジェクトの近くにAipiro Oh(私のアバター名)が接近すると、
オブジェクトのオーナーにメッセージが表示されます。


default
{
  state_entry()
  {
    llSensorRepeat("aipiro Oh", "", AGENT, 1, TWO_PI, 3.0);
  }
  sensor(integer total_number)
  {
    llOwnerSay("aipiro Oh is within 1m.");
  }
}
llSensorRepeat関数()
一番目のパラメータ : 検出するオブジェクトの名前(特に指定しない場合は"")
二番目のパラメータ : 検出するオブジェクトのID(特に指定しない場合は"")
三番目のパラメータ : 検出するタイプ(AGENT 、ACTIVE 、PASSIVE 、SCRIPTED)
四番目のパラメータ : センサーが検出する距離
五番目のパラメータ : センサーの届く角範囲(最大96m)
六番目のパラメータ : センサー作動する秒間隔(今回は3秒ごとに1回)
sensorイベント()
センサーが反応した場合、このイベントが発生します。

一番目のパラメータ : センサーに反応したキー(反応した最大16個がはいる。)


llSensorRepeatはサーバの負荷が高いようなので、
センサーを使う秒間隔を長くしたり必要なときだけ使うなどして気をつけて使った方がよさそうです。