LSLで使用できる型
integer 整数
float 浮動少数
string 文字列
list 配列、構造体のような型。データの集めるために使う。
vector X,Y,Zを持つ3つのfloat型の集まり。位置、色、速度などを設定するために使う。
rotation X,Y,Z,Sを持つ4つのfloat型の集まり。
key UUID(UniversallyUniqueIndentifier)。オブジェクトを識別するキー
よく使う定数
NULL_KEY | 00000000-0000-0000-0000-000000000000ヌルkey |
PI | 円周率。3.141593 |
PI_BY_TWO | 円周率÷2。1.570796 |
TWO_PI | 円周率×2。6.283185 |
ZERO_ROTATION | <0.0,0.0,0.0,0.1>回転していない状態。 |
ZERO_VECTOR | <0.0,0.0,0.0>ゼロベクトル。 |
PUBLIC_CHANNEL | 0。通常のチャットチャンネル。 |
DEBUG_CHANNEL | 2147483647デバッグ時に使用するチャットチャンネル。スクリプトエラーウィンドウに表示されます。 |
TRUE | 1。真 |
FALSE | 0。偽 |
LSLで使用できる演算子
LSLには、以下のような演算子があります。
種類 | 演算子 | |
---|---|---|
四則演算など | 足し算 | + |
引き算 | - | |
掛け算 | * | |
割り算 | / | |
商 | ¥ | |
余り | % | |
累乗 | ^ | |
マイナス化 | - | |
文字列連結 | + | |
代入をともなう演算式 | =、+=、-=、*=、/= | |
¥=、^=、&= | 条件式 | 等号 | == |
不等号 | <> |
if文:条件分岐
integer int = 0; if(int >= 0){ //0以上の処理 }else{ //0未満の処理 } |
for文:繰り返し処理
integer int = 0; for (int=0; int<100; int++){ //ループ処理 } |
while文:繰り返し処理
integer int = 0; integer isStop= FALSE; while(!isStop){ int++; if(int == 10){ isStop = TRUE; } } |
do-while文:繰り返し処理
integer int = 0; integer isStop= FALSE; do{ int++; if(int == 10){ isStop = TRUE; } }while(!isStop); |
JUMP文:分岐文(@ラベルのところへジャンプする)
integer int = 0; if(int == 0){ jump tolabel; } //省略 @tolabel llSay(0,"jump"); |