LlGetAgentInfo/ja

From Second Life Wiki
Jump to navigation Jump to search

要約

関数: integer llGetAgentInfo( key id );

id に関するエージェントの情報を含むビットフィールドを integer で返します。

• key id 同一 地域 にいるアバターの UUID

定数 エージェントが....時に返されます
AGENT_ALWAYS_RUN 0x1000 走行モード("常に走る") になっている、もしくは tap-tap-hold を使っている
AGENT_ATTACHMENTS 0x0002 装着している
AGENT_AUTOPILOT 0x2000 is in "オートパイロット" モード
AGENT_AWAY 0x0040 "away" モード
AGENT_BUSY 0x0800 "busy" モード
AGENT_CROUCHING 0x0400 しゃがんでいる
AGENT_FLYING 0x0001 飛んでいる
AGENT_IN_AIR 0x0100 空中に浮かんでいる
AGENT_MOUSELOOK 0x0008 マウスルック
AGENT_ON_OBJECT 0x0020 オブジェクトに座っている
AGENT_SCRIPTED 0x0004 スクリプトを装着
AGENT_SITTING 0x0010 座っている
AGENT_TYPING 0x0200 入力している
AGENT_WALKING 0x0080 歩いている、走っている、しゃがみ歩きをしている

警告

  • AGENT_BUSY は、本当にビジーモードになっていなくても、 "busy" 組み込みアニメーション を再生していることを示します。
  • AGENT_TYPING は "typing" 組み込みアニメーションを再生していることを示します。PlayTypingAnim を無効にしていると設定されません。
  • AGENT_ALWAYS_RUN|AGENT_WALKING は標準のビューワコントロールで走るようユーザが命令したことを示します。 llGetAnimation を使って、物理属性によっての走行も検出しましょう。
  • この関数は境界線を越えた直後には信頼できる情報を返却しません。可能であれば、代わりに llGetAnimation を使いましょう。 SVC-3177

サンプル

default
{
    touch_start(integer buf)
    {
        buf = llGetAgentInfo(llDetectedKey(0));
        string out;
        if(buf & AGENT_FLYING)
            out += "エージェントは飛行しています。\n";
        else
            out += "エージェントは飛行していません。\n";
        
        if(buf & AGENT_ATTACHMENTS)
        {
            if(buf & AGENT_SCRIPTED)
                out += "エージェントのアタッチメントにはスクリプトが入っています。\n";
            else
                out += "エージェントのアタッチメントにはスクリプトが入っていません。\n";
        }
        else
            out += "エージェントはアタッチメントをつけていません。\n";
        
        if(buf & AGENT_MOUSELOOK)
            out += "エージェントはマウスルックです。";
        else
            out += "エージェントは通常のカメラモードです。";
        llWhisper(0, out);
    }
}

注意点

地域にアバターがいるかを確認するには良い方法ではありません。代わりに llGetAgentSize を使いましょう。

関連項目

特記事項

経緯

All Issues

~ Search JIRA for related Issues
   llGetAgentInfo() returns unreliable info after a sim border crossing

テスト

•  llGetAgentInfo_Test

Signature

function integer llGetAgentInfo( key id );
この翻訳は 原文 と比べて古いですか?間違いがありますか?読みにくいですか?みんなで 修正 していきましょう! (手順はこちら)
この項目はあなたにとって参考にならない項目ですか?もしかしたらLSL Wikiの関連した項目が参考になるかもしれません。