llAttachToAvatar
llAttachToAvatar(integer attachment)
オブジェクトを指定した位置にアタッチさせる。
オブジェクトはワールド内にrezされていなければならず、かつスクリプトからパーミッションPERMISSION_ATTACHを取得する必要がある。
また、オブジェクトのオーナーでなければアタッチはできない。
従って、オーナー以外のユーザーに対してPERMISSION_ATTACHを取得しても無意味である。
オブジェクトはワールド内にrezされていなければならず、かつスクリプトからパーミッションPERMISSION_ATTACHを取得する必要がある。
また、オブジェクトのオーナーでなければアタッチはできない。
従って、オーナー以外のユーザーに対してPERMISSION_ATTACHを取得しても無意味である。
アタッチしようとした箇所にすでに別のアタッチメントが付いていた場合、もとのアタッチメントは自動的にデタッチされ、この関数を実行したオブジェクトが新たにアタッチされる。
初めてアタッチされた場合、オブジェクトはアタッチ箇所の0,0,0の位置に付くが、位置調整を行っておけば、二度目以降は調整した位置に付く。
以上、基本的にインベントリからアタッチした場合と同様の動作である。
初めてアタッチされた場合、オブジェクトはアタッチ箇所の0,0,0の位置に付くが、位置調整を行っておけば、二度目以降は調整した位置に付く。
以上、基本的にインベントリからアタッチした場合と同様の動作である。
引数attachmentには以下の値を使用可能である。
定数名 | 値 | 説明 |
なし | 0 | 前回のアタッチ箇所に付く。初めてアタッチする場合は右手に付く。 |
ATTACH_CHEST | 1 | 胸 |
ATTACH_HEAD | 2 | 頭 |
ATTACH_LSHOULDER | 3 | 左肩 |
ATTACH_RSHOULDER | 4 | 右肩 |
ATTACH_LHAND | 5 | 左手 |
ATTACH_RHAND | 6 | 右手 |
ATTACH_LFOOT | 7 | 左足 |
ATTACH_RFOOT | 8 | 右足 |
ATTACH_BACK | 9 | 背中 |
ATTACH_PELVIS | 10 | 骨盤 |
ATTACH_MOUTH | 11 | 口 |
ATTACH_CHIN | 12 | あご |
ATTACH_LEAR | 13 | 左耳 |
ATTACH_REAR | 14 | 右耳 |
ATTACH_LEYE | 15 | 左目 |
ATTACH_REYE | 16 | 右目 |
ATTACH_NOSE | 17 | 鼻 |
ATTACH_RUARM | 18 | 右上腕部 |
ATTACH_RLARM | 19 | 右下腕部 |
ATTACH_LUARM | 20 | 左上腕部 |
ATTACH_LLARM | 21 | 左下腕部 |
ATTACH_RHIP | 22 | 右尻 |
ATTACH_LHIP | 23 | 左尻 |
ATTACH_RULEG | 24 | 右上脚部 |
ATTACH_RLLEG | 25 | 右下脚部 |
ATTACH_LULEG | 26 | 左上脚部 |
ATTACH_LLLEG | 27 | 左下脚部 |
ATTACH_BELLY | 28 | 腹/胃 |
ATTACH_RPEC | 29 | 右胸部 |
ATTACH_LPEC | 30 | 左胸部 |
なし | 31 | HUD-中央2 |
なし | 32 | HUD-右上 |
なし | 33 | HUD-上 |
なし | 34 | HUD-左上 |
なし | 35 | HUD-中央 |
なし | 36 | HUD-左下 |
なし | 37 | HUD-下 |
なし | 38 | HUD-右下 |
以下の例はタッチするとオブジェクトを右手にアタッチしようとする。
default { touch_start(integer num_detected) { if (llDetectedKey(0) == llGetOwner()){ llRequestPermissions(llDetectedKey(0), PERMISSION_ATTACH); } } run_time_permissions(integer perm) { if (perm & PERMISSION_ATTACH) { llAttachToAvatar(ATTACH_RHAND); } } }