2009年1月7日水曜日

[LSL] llSetTimerEvent って・・・

以前の投稿でも、llSetTimerEvent がうまくリセットできない、、、ということを書きましたが、今日もその状況になってしまって、、、やること全然できなかった(笑

バージョンの違う、同じようなスクリプトを複数試しても、やっぱりおかしい!

あきらめかけていたんですが、上述の昔の投稿を思い出し、とりあえず、タイマーセットする前に lllSetTimerEvent(0.0); でゼロにして、それから秒数を指定してみました。

すると、それまで全然だめだったのがちゃんと指定秒数で動くようになり。。。。

難しいですねぇ、、、。

この

       llSetTimerEvent(0.0);
       llSetTimerEvent(320.0);

というような書き方は必須かな、、、。

話しはかわり、今日、mono 環境ではじめて、heap/stack エラーでたり・・・

メモリーとの戦いだったわけですが、この話題は別にわけてご紹介したいんですけど、バイトと文字数は違うことを Linden ちゃんと認識してほしいです、、、 llDialog の仕様を変える必要はないけど (ボタン 24, メッセージ 512 バイト制限)、だったら byte数を取得する関数がほしいですね、、、GetStringLength だと文字数なんです、、、。いまって UTF-8 だから 3バイト使ってるし。日本語。 llGetStringBytes とか、、、ほしい、、、。(*追記1)

今日は疲れました・・・

ということで(?)おやすみなさい。 m(_ _)m

(追記1)文字列のバイト長の取得、ちょっと試してみました

2 件のコメント:

  1. この記事を見て色々実験してみたんですけど、一文字3byteなんだから
    llStringLength("日本語") * 3
    文字数×3でバイト数を求めらるんじゃないかと。

    返信削除
  2. 日本語だけしか使われないなら、、、それでいいですよね~。

    返信削除