LlTakeControls/ja
From Second Life Wiki
メインページ > LlTakeControls > LlTakeControls/ja
関数: llTakeControls( integer controls, integer accept, integer pass_on );
タスクに許される範囲で、エージェントのコントロールを横取りします。acceptがcontrolsと入力のビット演算結果と同一の場合、入力はタスクに送られます。pass_onがTRUEの場合、エージェントにも送られます。
| • integer | controls | |||
| • integer | accept | |||
| • integer | pass_on |
実行するには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 | 上昇 (PgUp か E) |
| CONTROL_DOWN | 0x00000020 | 下降 (PgDn か C) |
| CONTROL_LBUTTON | 0x10000000 | マウス左クリック |
| CONTROL_ML_LBUTTON | 0x40000000 | マウスルック中のマウス左クリック |
警告
- スクリプトに権限PERMISSION_TAKE_CONTROLSが不足している場合、スクリプトはDEBUG_CHANNEL上でエラーを報告して、演算に失敗するでしょう。(しかしスクリプトは実行し続けます。)
ノート
スクリプトがコントロールを取得した場合、エージェントがスクリプト禁止領域に入ってもスクリプトは停止しないでしょう。これは、乗り物のコントロールを有効なままにするためには、とりあえず妥当と言えます。同様に、AOもスクリプト禁止領域に入っても停止しないことになりますが、こちらはバグなのか意図的なものなのかははっきりしません。
関連項目
イベント
| • | run_time_permissions | – | 権限で受信するイベントです | |
| • | control |
関数
| • | llGetPermissions | – | 付与されている権限を取得します | |
| • | llGetPermissionsKey | – | 権限が付与されているエージェントを取得します | |
| • | llRequestPermissions | – | 権限を要求します | |
| • | llReleaseControls |
項目
| • | スクリプトの権限 |
この項目はあなたにとって参考にならない項目ですか?もしかしたらLSL Wikiの関連した項目が参考になるかもしれません。

