ソラマメブログ

2008年02月09日

walking のスクリプティング講座(その7)

そろそろ飽きてきたかな w

独立した手続き部分はこのエントリーでお終いにしよう
stop_fountain() 
{
integer i;
for (i = min_link_num; i <= max_link_num; i++) {
llMessageLinked(i, 0, stop_str, NULL_KEY);
}
}

これは~ 噴水を止める手続きだな

min_link_num と max_link_num が出てきたね ^^

全部のノズルに対し stop_str つまり 停止命令を出すというのがこの手続きの仕事だ
integer vector2int(vector v)
{
return (integer)(v.x * 100000) + (integer)(v.y * 1000) + (integer)(v.z * 10);
}

vector っていうのは 3つのデータを扱うのに使うということを言っていたけれど その 3つのデータを 1つの整数にして返そうというのがこの手続きの仕事

.x .y .z と付けると それぞれのデータってことになるんだ
set_default_colors()
{
llMessageLinked(LINK_SET, vector2int(default_start_color), start_color_str, NULL_KEY);
llMessageLinked(LINK_SET, vector2int(default_end_color), end_color_str, NULL_KEY);
}

あ~ これは 全部のノズルに対して 最初の色と 最後の色を 渡している

vector2int っていうのが使われてるね ^^ 1個しかデータは渡せないので 3個のデータを 1個に詰め込んで渡してるってわけだ

LINK_SET っていうのは 全てのノズルを指している(というかオブジェクト中の全てのプリムってことだけど)

だから~ 最初の関数でやっていたのは LINK_SET を使えば 1行でできちゃったんだね w

途中で新しいことを憶えながら作って前の部分を見直してないと こういうことになる ^^

(続く)

タグ :スクリプト

同じカテゴリー(walking のスクリプティング講座)の記事
 プロフィール写真の表示に問題 (2009-11-30 20:55)
 ミニ太陽系 (2009-03-21 06:03)
 関数から文字列を返したら何か問題になる? (2009-03-18 18:02)
 llListFindList って型って関係ないんだったっけ (2009-03-18 14:02)
 夏時間(PDT)の実験 (2009-03-08 22:04)
 15パズルの作り方(その3) (2009-03-08 06:03)
上の画像に書かれている文字を入力して下さい
 
<ご注意>
書き込まれた内容は公開され、ブログの持ち主だけが削除できます。