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

サウンドファイルを再生する(llPlaySound、llPreloadSound関数)

まず、サウンドファイルを準備しアップロードします。アップロードするには10$L必要です。
メニューから「サウンドをアップロード」を選び、サウンドファイルを指定します。

下記のスクリプトでは、オブジェクトをクリックした時に"information"のサウンドが再生されます。
ちなみに今回使用した"information"のサウンドは、「ぴん、ぽん、ぱん、ぽぉーーーーーーーん。」
という音です。フリー素材をインターネットで探しました。
アップロードすると在庫目録(Inventry)にサウンドファイルが入りますのでそれをスクリプトと同じ場所にセットしてください。

default
{
  state_entry()
  {
    llPreloadSound("information");
  }
  touch_start(integer total_number)
  {
    llPlaySound("information",1.0);
  }
}
llPlaySound関数
一番目のパラメータ : サウンドファイル名
二番目のパラメータ : サウンドを流すボリューム(0.0〜1.0を指定)

サウンドファイルをアップロード中に「44.1Kである必要がある」エラーが表示された場合は

サウンドファイルは、wav形式のファイルのみアップロード可能です。
サイズが大きい場合、形式が異なる場合は以下の「44.1Kである必要がある」というメッセージが表示されることがあります。

このエラーが表示された場合は、サウンドプレーヤでサウンドファイルを読込み、
「名前を付けて保存」にある「変更」ボタンを押してください。

属性を44.100kHz,16ビット,ステレオを指定して保存してください。このファイルをセカンドライフにアップロードしてください。

<おまけ>サウンドファイルを繰り返し再生する(llLoopSound、llStopSound関数)

下記のスクリプトでは、オブジェクトをクリックした時に"Soundtrack 1"のサウンドが再生されます。
もう一度クリックするまで、サウンドは繰り返し再生されます。止まりません。
ちなみに今回使用した"Soundtrack 1"のサウンドは、誰でもライブラリに存在していますので、
アップロードの必要はありません。

integer i;
default
{
  state_entry()
  {
    llPreloadSound("Soundtrack 1");
    i= FALSE;
  }
  touch_start(integer total_number)
  {
    if(i== FALSE){
        llLoopSound("Soundtrack 1",1.0);
        i= TRUE;
    }else{
        llStopSound();
        i= FALSE;
    }
  }
}
llLoopSound関数(サウンドを再生します。)
一番目のパラメータ : サウンドファイル名
二番目のパラメータ : サウンドを流すボリューム(0.0〜1.0を指定)
llStopSound関数(サウンドを停止します。)