Difference between revisions of "LlTakeControls/ja"

From Second Life Wiki
Jump to navigation Jump to search
m
m (カテゴリ変更)
Line 24: Line 24:
|also_tests
|also_tests
|notes=スクリプトがコントロールを取得した場合、エージェントがスクリプト禁止領域に入ってもスクリプトは停止しないでしょう。これは、乗り物のコントロールを有効なままにするためには、とりあえず妥当と言えます。同様に、AOもスクリプト禁止領域に入っても停止しないことになりますが、こちらはバグなのか意図的なものなのかははっきりしません。
|notes=スクリプトがコントロールを取得した場合、エージェントがスクリプト禁止領域に入ってもスクリプトは停止しないでしょう。これは、乗り物のコントロールを有効なままにするためには、とりあえず妥当と言えます。同様に、AOもスクリプト禁止領域に入っても停止しないことになりますが、こちらはバグなのか意図的なものなのかははっきりしません。
|cat1=Controls
|cat1=Controls/ja
|cat2
|cat2
|cat3
|cat3
|cat4
|cat4
}}
}}

Revision as of 07:30, 10 April 2010

要約

関数: llTakeControls( integer controls, integer accept, integer pass_on );

タスクに許される範囲で、エージェントのコントロールを横取りします。acceptがcontrolsと入力のビット演算結果と同一の場合、入力はタスクに送られます。pass_onTRUEの場合、エージェントにも送られます。

• integer controls
• integer accept
• integer pass_on

実行するには、llRequestPermissions による PERMISSION_TAKE_CONTROLS 権限が必要です。

定数 説明
CONTROL_FWD 0x00000001 前進 (W)
CONTROL_BACK 0x00000002 後進 (S)
CONTROL_LEFT 0x00000004 左移動 (⇧ Shift-⇧ Shift-A [マウスルックならば A])
CONTROL_RIGHT 0x00000008 右移動 (⇧ Shift-⇧ Shift-D [マウスルックならば D])
CONTROL_ROT_LEFT 0x00000100 左回転 (A)
CONTROL_ROT_RIGHT 0x00000200 右回転 (D)
CONTROL_UP 0x00000010 上昇 (PgUpE)
CONTROL_DOWN 0x00000020 下降 (PgDnC)
CONTROL_LBUTTON 0x10000000 マウス左クリック
CONTROL_ML_LBUTTON 0x40000000 マウスルック中のマウス左クリック
(undocumented) 0x02000000 Avatar left rotation detected. Triggers llGetAnimation == "Turning Left"
(undocumented) 0x04000000 Avatar right rotation detected. Triggers llGetAnimation == "Turning Right"

警告

  • 権限の自動付与に頼らないようにしましょう。常に run_time_permissions イベントを使用しましょう。
  • スクリプトに PERMISSION_TAKE_CONTROLS の権限が不足していると、スクリプトはエラーを DEBUG_CHANNEL で叫び、操作に失敗します (しかしスクリプトは処理を続けます)。
  • PERMISSION_TAKE_CONTROLS 権限が付与された後は、スクリプトの中で (llReleaseControls か、新しい llRequestPermissions の呼び出しにより)、もしくはユーザがビューワから「キー制御を解除」を選択することで、権限をはく奪することができます。そうでなければ、スクリプトはオブジェクトが derez (削除、取り外し、取り込み) されない限り権限が失われません。
All Issues ~ Search JIRA for related Bugs

サンプル

注意点

スクリプトがコントロールを取得した場合、エージェントがスクリプト禁止領域に入ってもスクリプトは停止しないでしょう。これは、乗り物のコントロールを有効なままにするためには、とりあえず妥当と言えます。同様に、AOもスクリプト禁止領域に入っても停止しないことになりますが、こちらはバグなのか意図的なものなのかははっきりしません。

関連項目

イベント

•  run_time_permissions 権限取得イベント
•  control

関数

•  llGetPermissions 付与されている権限を取得します
•  llGetPermissionsKey 権限を許可したエージェントを取得します
•  llRequestPermissions 権限を要求します
•  llReleaseControls

記事

•  権限/スクリプト

特記事項

Search JIRA for related Issues

Signature

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