おあそびで拡声器作ってみた。

MasterPoppy Amat

2008年01月29日 21:35



 お遊びで拡声器作ってみました。イベントのスタッフの方とか使うやつかな。





ひだりの赤マルがスクリプトを仕込んだHUD。

僕自身は普通にチャットで発言してるだけです。

100m先ぐらいまで聞こえると思います。






タッチでON/OFF切り変えれます。





タッチするとオーナー名とオブジェクト名を同期する仕組みです。

OFFにするとオブジェクト名はmegaphoneにもどります。







ソースコード乗っけときます。
HUDかなんかにボタン1こ追加して
仕込んでおくくらいが使い勝手がいいとおもいます。

簡単なのでスクリプトの練習に適してるのではないでしょうか。







default
{
    state_entry()
    {
        llSetObjectName("megaphone");
        llSetText("Off",<1,1,1>,1);
    }


    touch_start(integer total_number)
    {
        if(llDetectedKey(0) == llGetOwner())
        {
            state on;
        }
    }
}




state on
{
    state_entry()
    {
        llSetObjectName(llKey2Name(llGetOwner()));
        llSetText("On",<1,1,1>,1);
        llListen( 0, "", llGetOwner(), "" );
    }
   
    touch_start(integer total_number)
    {
        if(llDetectedKey(0) == llGetOwner())
        {
            state default;
        }
    }
   
    listen(integer channel, string name, key id, string message)
    {
        llShout(0,message);
    }
}

LSLスクリプト