BlackSheep-LSL@Wiki llFrand
※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。

llFrand

float llFrand(float max)

max未満のランダムな小数値を返す。
小数値は必ず0.0以上である。
例えばllFrand(1.0)であれば、0.0~0.9999999....の範囲の値をランダムに返す。

ランダムな整数を取りたい場合は単にキャストすれば良い。
例えば以下の例は6面サイコロをシミュレートしたユーザー関数の例である。
integer dice(){
  return ((integer)llFrand(6.0) + 1);
}

default {
  touch_start(integer num_detected) {
    llSay(0, (string)dice());
  }
}

0からではなく、10~20の間の範囲でランダムな値を取りたいような場合は、
 llFrand(最大値 - 最小値) + 最低値
のようにすれば良い。
integer rand(integer min, integer max){
  return ((integer)llFrand(max - min) + min);
}

default {
  touch_start(integer num_detected) {
    llSay(0, (string)rand());
  }
}


名前:
コメント: