ソラマメブログ

2008年02月09日

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

さて お待ちかねの list の話だ w
list sequence0 = [0.0, 1, start_str, 4, 0, 0.0, LINK_ALL_OTHERS, start_str, 1, 0];
list sequence1 = [1.0, 2, start_str, 2, 1, 1.0, 2, stop_str, 2, 1, 1.0, 3, start_str, 2, 1, 1.0, 3, stop_str, 2, 1, 1.0, 4,
            start_str, 2, 1, 1.0, 4, stop_str, 2, 1, 1.0, 5, start_str, 2, 1, 1.0, 5, stop_str, 2, 1, 1.0, 6, start_str, 2, 1, 1.0, 6, stop_str, 2, 1];
list sequence2 = [0.0, 1, start_str, 4, 1, 0.0, LINK_ALL_OTHERS, start_str, 1, 1];
list sequence3 = [0.0, 1, start_str, 4, 1, 0.0, 2, start_str, 1, 3, 0.0, 3, start_str, 1, 4, 0.0, 4, start_str, 1, 5, 0.0, 5,
            start_str, 1, 6, 10.0, 6, start_str, 1, 2];
list sequence4 = [0.0, 1, start_str, 4, 1, 0.0, 2, start_str, 1, 4, 0.0, 3, start_str, 1, 5, 0.0, 4, start_str, 1, 6, 0.0, 5,
            start_str, 1, 2, 0.0, 6, start_str, 1, 3];
list sequence5 = [0.0, 1, start_str, 4, 1, 0.0, 2, start_str, 1, 4, 0.0, 3, start_str, 1, 5, 0.0, 4, start_str, 1, 6, 0.0, 5,
            start_str, 1, 2, 3.0, 6, start_str, 1, 3, 0.0, 1, stop_str, 4, 1, 0.0, 2, stop_str, 1, 4, 0.0, 3,
            stop_str, 1, 5, 0.0, 4, stop_str, 1, 6, 0.0, 5, stop_str, 1, 2, 5.0, 6, stop_str, 1, 3];
list sequence6_1 = [1.0, LINK_SET, start_str, 2, 2];
list sequence6_2 = [4.5, LINK_SET, stop_str, 2, 2];
list sequence6_3 = [1.0, LINK_SET, start_str, 2, 3];
list sequence6_4 = [4.5, LINK_SET, stop_str, 2, 3];
list sequence6_5 = [1.0, LINK_SET, start_str, 2, 4];
list sequence6_6 = [4.5, LINK_SET, stop_str, 2, 4];
list sequence6_7 = [1.0, LINK_SET, start_str, 2, 5];
list sequence6_8 = [4.5, LINK_SET, stop_str, 2, 5];
list sequence6_9 = [1.0, LINK_SET, start_str, 2, 6];
list sequence6_10 = [4.5, LINK_SET, stop_str, 2, 6];
list sequence7_1 = [0.0, LINK_SET, start_color_str, 50510, 0];
list sequence7_2 = [0.0, 2, start_str, 2, 0, 0.0, 3, start_str, 2, 0, 0.0, 4, start_str, 2, 0, 0.0, 5, start_str, 2, 0, 10.0, 6, start_str, 2, 0];
list sequence7_3 = [0.0, LINK_SET, start_color_str, 51005, 0];
list sequence7_4 = [0.0, 2, start_str, 2, 0, 0.0, 3, start_str, 2, 0, 0.0, 4, start_str, 2, 0, 0.0, 5, start_str, 2, 0, 10.0, 6, start_str, 2, 0];
list sequence7_5 = [0.0, LINK_SET, start_color_str, 101010, 0];
list sequence7_6 = [0.0, 2, start_str, 2, 0, 0.0, 3, start_str, 2, 0, 0.0, 4, start_str, 2, 0, 0.0, 5, start_str, 2, 0, 10.0, 6, start_str, 2, 0];
list sequence8_1 = [0.0, LINK_SET, start_color_str, 50510, 0];
list sequence8_2 = [0.8, 2, start_str, 2, 0, 0.8, 3, start_str, 2, 0, 0.8, 4, start_str, 2, 0, 0.8, 5, start_str, 2, 0, 0.8, 6, start_str, 2, 0];
list sequence8_2_2 = [10.0, 1, start_str, 6, 0];
list sequence8_3 = [0.8, 2, stop_str, 2, 0, 0.8, 3, stop_str, 2, 0, 0.8, 4, stop_str, 2, 0, 0.8, 5, stop_str, 2, 0, 0.8, 6, stop_str, 2, 0];
list sequence8_3_2 = [5.0, 1, stop_str, 6, 0];
list sequence8_4 = [0.0, LINK_SET, start_color_str, 51005, 0];
list sequence8_5 = [0.8, 2, start_str, 2, 0, 0.8, 3, start_str, 2, 0, 0.8, 4, start_str, 2, 0, 0.8, 5, start_str, 2, 0, 0.8, 6, start_str, 2, 0];
list sequence8_5_2 = [10.0, 1, start_str, 6, 0];
list sequence8_6 = [0.8, 2, stop_str, 2, 0, 0.8, 3, stop_str, 2, 0, 0.8, 4, stop_str, 2, 0, 0.8, 5, stop_str, 2, 0, 0.8, 6, stop_str, 2, 0];
list sequence8_6_2 = [5.0, 1, stop_str, 6, 0];

沢山あるけど それぞれが 噴水のパターンを定義している

沢山あるけど 実際には 0 から 8 までの 9パターンなんだ

でも なんだか 分かれちゃってるのがあるよね それって何でかっていうと Second Life のスクリプトの制限によるものなんだ

一定個数以上だとエラーになってしまうので わざわざ分けて 後で くっつけるということをしている... 面倒だね... こういう所は改版時に真っ先に直してもらいたいものだね w

さて... 少し中を見てみるかな

噴水のシーケンスを定義しているという話を前のエントリーでしたわけだけれど 1つのデータがどういう要素からできてたかというと

持続時間 / ソースのノズルのリンク番号 / コマンド / 高さ / ターゲットのノズルのリンク番号

だったわけだけれど これで sequence0 を見てみよう

0.0, 1, start_str, 4, 0, 0.0, LINK_ALL_OTHERS, start_str, 1, 0

となっているね...

どういうことかというと

-----

持続時間は 0.0 - つまり 持続しない w ってことは 以降ずーっとこの設定のままってこと パターン 0 は変化しないパターンだってことだね

ソースのノズルのリンク番号 は 1 - これは 真ん中のノズルなんだ リンクする時に最後にクリックすると リンク番号は 1になるからね

コマンド は start_str - 水を出せってことなんだ

高さは 4 - 4m ってこと

ターゲットのノズルのリンク番号は 0 - ターゲットはなし

-----

あれ? まだ データがあるよね ってことは それは次のデータなんだ 区別できないのは 分かりにくいけど これも Second Life のスクリプトの限界だね ^^

次のデータを見ていってみよう

-----

持続時間は 0.0 - つまり 持続しない w ってことは 以降ずーっとこの設定のままってこと パターン 0 は変化しないパターンだってことだね

ソースのノズルのリンク番号 は LINK_ALL_OTHERS - これはこのスクリプトの入っているプリム以外のプリムを示してる このスクリプトは真ん中のノズルに入れるので 周りのノズルを指すんだ

コマンド は start_str - 水を出せってことなんだ

高さは 1 - 1m ってこと

ターゲットのノズルのリンク番号は 0 - ターゲットはなし

-----

っていうわけで パターン 0 は 真ん中のノズルから 4m の水が出て 周りのノズルからは 1m の水が出るパターンだってことが分かるね

まあ こういう感じでやっていけば 全部のシーケンスのパターンを解析することができるわけだけれど これは 次回までの宿題だよ 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)
上の画像に書かれている文字を入力して下さい
 
<ご注意>
書き込まれた内容は公開され、ブログの持ち主だけが削除できます。