目次

型、演算子、分岐、繰返

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");