Difference between revisions of "LlGetInventoryPermMask"

From Second Life Wiki
Jump to navigation Jump to search
m (formatted example)
m
Line 49: Line 49:
{{LSL DefineRow||[[llGetInventoryType]]|}}
{{LSL DefineRow||[[llGetInventoryType]]|}}
|also_events
|also_events
|also_tests
|also_tests=
{{LSL DefineRow||[[llGetInventoryPermMask Test]]
|also_articles
|also_articles
|also_articles=
|also_articles=

Revision as of 20:20, 16 May 2008

{{LSL_Function |func_id=289|func_sleep=0.0|func_energy=10.0 |func=llGetInventoryPermMask|return_type=integer |p1_type=string|p1_name=item |p2_type=integer|p2_name=mask|p2_desc=MASK_* flag |func_footnote |func_desc |return_text=bitfield that is the requested permission mask for the inventory item |spec |caveats |constants=

Category Description
MASK_BASE 0 The base permissions.
MASK_OWNER 1 Current owner permissions.
MASK_GROUP 2 Active group permissions.
MASK_EVERYONE 3 Permissions everyone has.
MASK_NEXT 4 Permissions the next owner will have.
Permissions Value Description
PERM_ALL 0x7FFFFFFF Move/Modify/Copy/Transfer permissions
PERM_COPY 0x00008000 Copy permission
PERM_MODIFY 0x00004000 Modify permission
PERM_MOVE 0x00080000 Move permission
PERM_TRANSFER 0x00002000 Transfer permission

|examples= <lsl> // Complain unless this script is Open/ Yes Mod/ Yes Copy/ Yes Transfer.

warnIfClosed() {

   integer PERMS_OPEN = (PERM_MODIFY | PERM_COPY | PERM_TRANSFER);
   string item = llGetScriptName();
   integer everyonePerms = llGetInventoryPermMask(item, MASK_EVERYONE);
   integer nextPerms = llGetInventoryPermMask(item, MASK_NEXT);
   if ((everyonePerms & PERM_COPY))
   {
       if ((nextPerms & PERMS_OPEN) == PERMS_OPEN)
       {
           llOwnerSay("Open/ Yes Mod/ Yes Copy/ Yes Transfer/ Thank you");
           return;
       }
   }
   llSay(0, "Q: Open/ Yes Mod/ Yes Copy/ Yes Transfer? A: Not so!!!");

}

default {

   on_rez(integer start_param)
   {
       llResetScript();
   }
   state_entry()
   {
       warnIfClosed();
   }

} </lsl> |helpers |also_functions=|-style="vertical-align:top;" | style="color:gray;" |•  | llGetObjectPermMask | style="color:gray;" | | | |-style="vertical-align:top;" | style="color:gray;" |•  | llGetInventoryCreator | style="color:gray;" | | | |-style="vertical-align:top;" | style="color:gray;" |•  | llGetInventoryKey | style="color:gray;" | | | |-style="vertical-align:top;" | style="color:gray;" |•  | llGetInventoryType | style="color:gray;" | | | |also_events |also_tests= |-style="vertical-align:top;" | style="color:gray;" |•  | llGetInventoryPermMask Test

| style="color:gray;" | – | also_articles

| permission