llGetInventoryPermMask
integer llGetInventoryPermMask(string item, 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可能 |
以下の例はコンテンツ内にある"hogehoge"という名前のアイテムに関して、次のオーナーがModify権限を持っているかどうかを調べる。
default { state_entry(){ integer perm = llGetInventoryPermMask("hogehoge", MASK_NEXT); if (perm & PERM_MODIFY){ llSay(0, "Next owner can MODIFY."); }else{ llSay(0, "Next owner can't MODIFY."); } } }