いいねのたねいいねのたねいいねのたね
ばっちゃ
  • No.090


    にほんじんだもの Fujiyama Kazan

     いまsenkageと共同で、とあるツールの開発をしています。「チャットロガぁ」いいます。(このツールについてはいずれ詳しく解説する予定〜)

    んで、その開発中にこんな機能が必要になりました。「チャットした人が5メートル以内なら受信する」・・・ん? 喋ったアバターの位置って、どうやって取得するんだ?!




  •  touchした人、衝突した物体は以下の定番スクリプトで位置やら距離を取得することが出来ます。



    if (llVecDist(llGetPos(), llDetectedPos(0)) <= 5.0){ //

          // 5メートル以内なら行う何か〜

    }



     しかし、チャットを聞いて発動するイベント(listen)では「llDetectedPos(0)」が使えないみたい・・・><



     はてさて、どうしたものか・・・このままでは、またsenkage店長の角が私のあばら骨ねに突き刺さってしまいます。途方にくれていた時に思い出したのが「LSL-BBS」

     listenイベントの引数で発言者のkeyは取れているのですから、「keyからアバターの位置を取得する方法」について質問してみました。



     答え「llGetObjectDetails



     ・・・ん? llGetObjectDetails・・・オブジェクトの詳細?・・・いやいや、私が知りたいのはアバターの位置情報ですが・・・



     これがまたビックリ、位置も含めてアバターの情報も取れるじゃないですか!!



    実際に取得できた情報↓

    Name: "[私の名前]"

    Decription: ""

    Position.x: 148.223663

    Position.y: 19.746208

    Position.z: 22.122538

    Rotation: <0>

    Velocity: <0>

    Owner: [私のKey]

    Group: 00000000-0000-0000-0000-000000000000

    Creator: 00000000-0000-0000-0000-000000000000


    どーでもいいですが・・・Creatorが別の人のKeyだったら面白いなと。



    「keyからアバタの位置を取得する方法」 | LSL-BBS

    試作中の「チャットロガぁ」(WEBサイド)



     「LSL-BBS」でアドバイスを下さったMizさん。本当に有難う御座いました!!



    ... see you !




    [] これで記録しておけば、
    参加できなかったときのネタもちぇっくできますねー。便利。

    チャットの内容とるとき、毎回イベント通ってるんですよね?

    そしたら、誰が喋ったかも取得して表示できる??
    [aoi] 前のコメントはaoiですw
    [Fujiyama] >誰が喋ったかも取得して表示できる??

    取得する事も出来そうですが、やってないですよ〜
    議事録には向かい無いけど、気軽にしゃべってもらう為には、名前が出ないほうがいいでしょう。うん。
CaramelBox の トリツカレ男 Tシャツ! Nekoさんの10000L$生活 続・Second Life MARKETPLACE(セカンドライフ マーケットプレイス)で売る方法 この人のいちらん