スクリプト講座
スクリプトとは、オブジェクトに様々な効果を与える技術の一つです。
セカンドライフ((以下SL)では、このスクリプトをLSLと呼びます。
google等で検索をかける時は「LSL」という検索ワードを入れる事で、スムーズに調べる事ができます。
もし「スクリプト」だけで検索をすると、「JAVAスクリプト」や「VBスクリプト」等が大量に出てしまいます。
つまり、スクリプトとはSLだけのものではなく、広くコンピュータで使われるプログラムの一種なのです。
LSLは、SLのみで使えるプログラムなので、SL独特の特徴や単語があります。
実際に見てみよう
まず、作成ができる場所で、画面下にある建造ボタンから、オブジェクトをREZします。
REZとは私たちが普通にやっている、物を床に置く行為を差します。
作成モードでオブジェクトをクリックすると、そのオブジェクトの作成ウィンドに変わりますが、その中からコンテンツのタブを選びます。
そこに「新しいスクリプト」のボタンがあるので押してみましょう。

新たにスクリプトが作られ、左下に「Hello,Avatar!」と出ましたか?
次に、「作成モードをキャンセルして」、今のオブジェクトをクリックしてみましょう。
「Touched!.」と出たと思います。
これがスクリプトの基本です。
では再び、作成モードで今のオブジェクトのスクリプトを、今度はダブルクリックしてみましょう。

このエディッター上で、スクリプトを色々と作っていく事になります。
初めてのスクリプト
default { state_entry() { llSay(0, "Hello, Avatar!"); } touch_start(integer total_number) { llSay(0, "Touched."); } }
これが、一番最初にスクリプトを作った時に作られる、通称「ハローアバター」です。
スクリプトの書き方
スクリプトの文章を見ると、すいぶんと隙間が空いています。
これは見やすくするための工夫です。
基本的に、スクリプトでは1行に一つの内容を書きます。
また、行が長すぎる場合は、途中で改行をしても構いません。
さらに一つの単語を切る形でなければ、空白を空ける事も自由です。
実は、スクリプトは、このままではコンピュータが理解できません。
そこでコンピュータが理解できる内容に、翻訳をする作業が必要です。
これをコンパイルと言います。
スクリプトを保存する時に、自動的にコンパイルが行われ、改行や不必要な空白は無視されるのです。
ですから、スクリプトは見易さを重視して書く方が良いのです。
中括弧で囲み、その中にインデント下げをした中身を書く方法を「ブロック」と言います。
{
内容
{
内容
{
内容 ← { と } に囲まれたブロック構造
}
}
}
ブロック構造をとる事で、それぞれの内容が解りやすくなります。
行の先頭の空白(インデント)は、スペースキーではなくTABキーで入れます。
注:ここではWEB記述の制約で、TABではなく半角スペースを使っています。
LSLエディッターでは、中括弧を使うと自動的にインデントが設定される、便利機能があります。
では、この「ハローアバター」スクリプトを使って、次から一つずつ解説をしていきましょう。


