Difference between revisions of "Template:LSL Function/permission"

From Second Life Wiki
Jump to navigation Jump to search
m (maybe..)
(let's try, I hope I got the nesting right)
Line 8: Line 8:
* If the script lacks the permission [[{{{1}}}]], the script will shout an error on {{#var:DEBUG_CHANNEL}} and the operation fails (but the script continues to run).{{#ifeq:{{{grant|anyone<noinclude>*</noinclude>}}}|anyone||
* If the script lacks the permission [[{{{1}}}]], the script will shout an error on {{#var:DEBUG_CHANNEL}} and the operation fails (but the script continues to run).{{#ifeq:{{{grant|anyone<noinclude>*</noinclude>}}}|anyone||
* If [[{{{1}}}]] is granted by anyone other than {{{grant|anyone}}}, then when the function is called an error will be shouted on {{#var:DEBUG_CHANNEL}}.}}}}
* If [[{{{1}}}]] is granted by anyone other than {{{grant|anyone}}}, then when the function is called an error will be shouted on {{#var:DEBUG_CHANNEL}}.}}}}
{{#ifeq:{{{1}}}|PERMISSION_TAKE_CONTROLS|* Once the [[{{{1}}}]] permission is granted, it can be revoked from inside the script (with [[llReleaseControls]] or a new [[llRequestPermissions]] call), or if the user chooses Release Keys from the viewer. Otherwise, the script will only lose the permission if it is reset or the object derezzed (deleted, detached, or taken). |* Once the [[{{{1}}}]] permission is granted there is no way to revoke it except from inside the script (for example, with a new [[llRequestPermissions]] call). The script will only lose the permission if it is reset or the object is derezzed (deleted, detached, or taken).}} }}
{{#ifeq:{{{1}}}|PERMISSION_TAKE_CONTROLS|* Once the [[{{{1}}}]] permission is granted, it can be revoked from inside the script (with [[llReleaseControls]] or a new [[llRequestPermissions]] call), or if the user chooses Release Keys from the viewer. Otherwise, the script will only lose the permission if it is reset or the object derezzed (deleted, detached, or taken). |{{#ifeq:{{{1}}}|PERMISSION_CONTROL_CAMERA|*The [[{{{1}}}]] permission is automatically revoked when the avatar stands up from or detaches the object.|* Once the [[{{{1}}}]] permission is granted there is no way to revoke it except from inside the script (for example, with a new [[llRequestPermissions]] call). The script will only lose the permission if it is reset or the object is derezzed (deleted, detached, or taken).}} }} }}
{{#vardefine:also_events|{{#var:also_events}}
{{#vardefine:also_events|{{#var:also_events}}
{{LSL DefineRow||[[run_time_permissions]]|Permission receiving event}}}}
{{LSL DefineRow||[[run_time_permissions]]|Permission receiving event}}}}

Revision as of 13:48, 22 September 2010

#var value
header_footnote Requires the [[{{{1}}}]] permission to run.
caveats
  • Do not depend upon the auto-grant status of permissions. Always use the run_time_permissions event.
  • If the script lacks the permission [[{{{1}}}]], the script will shout an error on DEBUG_CHANNEL and the operation fails (but the script continues to run).
  • If [[{{{1}}}]] is granted by anyone other than anyone, then when the function is called an error will be shouted on DEBUG_CHANNEL.
  • Once the [[{{{1}}}]] permission is granted there is no way to revoke it except from inside the script (for example, with a new llRequestPermissions call). The script will only lose the permission if it is reset or the object is derezzed (deleted, detached, or taken).
also_events
•  run_time_permissions Permission receiving event
also_functions
•  llGetPermissions Get the permissions granted
•  llGetPermissionsKey Get the agent who granted permissions
•  llRequestPermissions Request permissions
also_articles
•  Script permissions