llGetObjectPermMask
integer llGetObjectPermMask(integer mask)
オブジェクトの権限を取得する。
引数maskには調べたい権限の対象者を指定する。
引数maskには調べたい権限の対象者を指定する。
| 定数 | 値 | 説明 |
| MASK_BASE | 0 | 基本(現在のオーナーの権限に等しい) |
| MASK_OWNER | 1 | 現在のオーナーの権限 |
| MASK_GROUP | 2 | グループの権限 |
| MASK_EVERYONE | 3 | その他の人々の権限 |
| MASK_NEXT | 4 | 次のオーナーの権限 |
戻り値はビットフィールドになっているので、以下の定数と&演算を行って権限をチェックする。
| 定数 | 値(16進数) | 値(整数値) | 説明 |
| PERM_ALL | 0x7FFFFFFF | 2147483647 | Move/Modify/Copy/Transfer(フルパーミッション) |
| PERM_COPY | 0x00008000 | 32768 | Copy可能 |
| PERM_MODIFY | 0x00004000 | 16384 | Modify可能 |
| PERM_MOVE | 0x00080000 | 524288 | Move可能 |
| PERM_TRANSFER | 0x00002000 | 8192 | Transfer可能 |
以下の例は次のオーナーがCopy権限を持っているかどうかを調べる。
default {
state_entry(){
integer perm = llGetObjectPermMask(MASK_NEXT);
if (perm & PERM_COPY){
[[llSay]](0, "Next owner can COPY.");
}else{
llSay(0, "Next owner can't COPY.");
}
}
}