Difference between revisions of "LlGetAgentInfo/ja"

From Second Life Wiki
Jump to navigation Jump to search
m (Undo revision 849052 by Mako Nozaki (Talk))
Line 1: Line 1:
{{LSL Function/avatar/ja|id|sim=*}}{{LSL_Function/ja
{{Issues/SVC-3177}}{{LSL Function/avatar/ja|id|sim=*}}{{LSL_Function/ja
|func=llGetAgentInfo
|func=llGetAgentInfo
|sort=GetAgentInfo
|sort=GetAgentInfo
Line 6: Line 6:
|func_footnote
|func_footnote
|func_desc
|func_desc
|return_text='''id'''に関するエージェントの情報を含むビットフィールド
|return_text='''id''' に関するエージェントの情報を含むビットフィールド
|spec
|spec
|caveats
|caveats=*{{LSLG/ja|AGENT_BUSY}} は、本当にビジーモードになっていなくても、 "busy" {{LSLG/ja|Internal Animations|組み込みアニメーション}} を再生していることを示します。
* {{LSLG/ja|AGENT_TYPING}} は "typing" 組み込みアニメーションを再生していることを示します。{{LSLG/ja|Debug Settings|PlayTypingAnim}} を無効にしていると設定されません。
*{{LSLG/ja|AGENT_ALWAYS_RUN}}{{!}}{{LSLG/ja|AGENT_WALKING}} は標準のビューワコントロールで走るようユーザが命令したことを示します。 {{LSLG/ja|llGetAnimation}} を使って、物理属性によっての走行も検出しましょう。
*この関数は境界線を越えた直後には信頼できる情報を返却しません。可能であれば、代わりに {{LSLG/ja|llGetAnimation}} を使いましょう。 {{Jira|SVC-3177}}
|constants=
|constants=
{{{!}}class="wikitable sortable collapsible" {{Prettytable}}
{{{!}}class="wikitable sortable collapsible" {{Prettytable}}
Line 16: Line 19:
!class="unsortable"{{!}} エージェントが....時に返されます
!class="unsortable"{{!}} エージェントが....時に返されます
{{!}}-
{{!}}-
{{!}}{{LSL Const/ja|AGENT_ALWAYS_RUN|integer|hex=0x1000|4096|c=走っている("Always Run")}}
{{!}}{{LSL Const/ja|AGENT_ALWAYS_RUN|integer|hex=0x1000|4096|c=走行モード({{String|常に走る}}) になっている、もしくは tap-tap-hold を使っている}}
{{!}}{{#var:value}}
{{!}}{{#var:value}}
{{!}}{{#var:comment}}
{{!}}{{#var:comment}}
Line 24: Line 27:
{{!}}{{#var:comment}}
{{!}}{{#var:comment}}
{{!}}-
{{!}}-
{{!}}{{LSL Const/ja|AGENT_AWAY|integer|hex=0x0040|64|c="away"モード}}
{{!}}{{LSL Const/ja|AGENT_AUTOPILOT|integer|hex=0x2000|8192|c=is in {{String|オートパイロット}} モード}}
{{!}}{{#var:value}}
{{!}}{{#var:value}}
{{!}}{{#var:comment}}
{{!}}{{#var:comment}}
{{!}}-
{{!}}-
{{!}}{{LSL Const/ja|AGENT_BUSY|integer|hex=0x0800|2048|c="busy"モード}}
{{!}}{{LSL Const/ja|AGENT_AWAY|integer|hex=0x0040|64|c={{String|away}} モード}}
{{!}}{{#var:value}}
{{!}}{{#var:comment}}
{{!}}-
{{!}}{{LSL Const/ja|AGENT_BUSY|integer|hex=0x0800|2048|c={{String|busy}} モード}}
{{!}}{{#var:value}}
{{!}}{{#var:value}}
{{!}}{{#var:comment}}
{{!}}{{#var:comment}}
Line 64: Line 71:
{{!}}{{#var:comment}}
{{!}}{{#var:comment}}
{{!}}-
{{!}}-
{{!}}{{LSL Const/ja|AGENT_WALKING|integer|hex=0x0080|128|c=歩いている}}
{{!}}{{LSL Const/ja|AGENT_WALKING|integer|hex=0x0080|128|c=歩いている、走っている、しゃがみ歩きをしている}}
{{!}}{{#var:value}}
{{!}}{{#var:value}}
{{!}}{{#var:comment}}
{{!}}{{#var:comment}}
Line 77: Line 84:
         string out;
         string out;
         if(buf & AGENT_FLYING)
         if(buf & AGENT_FLYING)
             out += "The agent is flying.\n";
             out += "エージェントは飛行しています。\n";
         else
         else
             out += "The agent is not flying.\n";
             out += "エージェントは飛行していません。\n";
          
          
         if(buf & AGENT_ATTACHMENTS)
         if(buf & AGENT_ATTACHMENTS)
         {
         {
             if(buf & AGENT_SCRIPTED)
             if(buf & AGENT_SCRIPTED)
                 out += "The agent has scripted attachments.\n";
                 out += "エージェントのアタッチメントにはスクリプトが入っています。\n";
             else
             else
                 out += "The agent's attachments are unscripted.\n";
                 out += "エージェントのアタッチメントにはスクリプトが入っていません。\n";
         }
         }
         else
         else
             out += "The agent does not have attachments.\n";
             out += "エージェントはアタッチメントをつけていません。\n";
          
          
         if(buf & AGENT_MOUSELOOK)
         if(buf & AGENT_MOUSELOOK)
             out += "the agent is in mouselook.";
             out += "エージェントはマウスルックです。";
         else
         else
             out += "the agent is in normal camera mode.";
             out += "エージェントは通常のカメラモードです。";
         llWhisper(0, out);
         llWhisper(0, out);
     }
     }
Line 101: Line 108:
|helpers
|helpers
|also_functions=
|also_functions=
{{LSL DefineRow||[[llRequestAgentData/ja|llRequestAgentData]]|}}
{{LSL DefineRow||{{LSLG/ja|llRequestAgentData}}|}}
{{LSL DefineRow||[[llGetAnimation/ja|llGetAnimation]]|}}
{{LSL DefineRow||{{LSLG/ja|llGetAnimation}}|}}
{{LSL DefineRow||[[llGetAnimationList/ja|llGetAnimationList]]|}}
{{LSL DefineRow||{{LSLG/ja|llGetAnimationList}}|}}
|also_events
|also_events
|also_tests
|also_tests=
{{LSL DefineRow||[[llGetAgentInfo_Test]]|}}
|also_articles
|also_articles
|notes
|notes=地域にアバターがいるかを確認するには良い方法ではありません。代わりに {{LSLG/ja|llGetAgentSize}} を使いましょう。
|permission
|history=*{{LSLG/ja|AGENT_AUTOPILOT}} は {{SVN|2900|rev=136439|trunk=*|ser=1.33.0|anchor=file21}} で導入されました。
|negative_index
|cat1=Avatar
|cat1=Avatar
|cat2
|cat2

Revision as of 01:56, 3 May 2010

要約

関数: 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

Important Issues

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

サンプル

<lsl> 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);
   }

}

</lsl>

注意点

地域にアバターがいるかを確認するには良い方法ではありません。代わりに 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の関連した項目が参考になるかもしれません。