Difference between revisions of "LlGetPermissions"
Jump to navigation
Jump to search
m |
m (<lsl> tag to <source>) |
||
(5 intermediate revisions by 4 users not shown) | |||
Line 9: | Line 9: | ||
|caveats | |caveats | ||
|constants={{LSL Constants/Permissions}} | |constants={{LSL Constants/Permissions}} | ||
|examples=< | |examples=<source lang="lsl2">default | ||
default | |||
{ | { | ||
state_entry() | |||
{ | { | ||
llRequestPermissions(llGetOwner(), | |||
//Comment out any of the following lines for fun | |||
PERMISSION_DEBIT | | |||
PERMISSION_TAKE_CONTROLS | | |||
PERMISSION_TRIGGER_ANIMATION | | |||
PERMISSION_ATTACH | | |||
PERMISSION_CHANGE_LINKS | | |||
PERMISSION_TRACK_CAMERA | | |||
PERMISSION_CONTROL_CAMERA | | |||
0); | |||
} | } | ||
touch_start(integer a) | |||
{ | { | ||
integer perm = llGetPermissions(); | |||
if(perm & PERMISSION_DEBIT) | |||
llOwnerSay("Can use llGiveMoney"); | |||
if(perm & PERMISSION_TAKE_CONTROLS) | |||
llOwnerSay("Can use llTakeControls"); | |||
if(perm & PERMISSION_TRIGGER_ANIMATION) | |||
llOwnerSay("Can use llStartAnimation"); | |||
if(perm & PERMISSION_ATTACH) | |||
llOwnerSay("Can use llAttachToAvatar"); | |||
if(perm & PERMISSION_CHANGE_LINKS) | |||
llOwnerSay("Can use llCreateLink"); | |||
if(perm & PERMISSION_TRACK_CAMERA) | |||
llOwnerSay("Can use llGetCameraPos"); | |||
if(perm & PERMISSION_CONTROL_CAMERA) | |||
llOwnerSay("Can use llSetCameraParams"); | |||
} | } | ||
run_time_permissions(integer perm) | |||
{ | |||
</ | if(perm & PERMISSION_DEBIT) | ||
llOwnerSay("Can use llGiveMoney"); | |||
if(perm & PERMISSION_TAKE_CONTROLS) | |||
llOwnerSay("Can use llTakeControlls"); | |||
if(perm & PERMISSION_TRIGGER_ANIMATION) | |||
llOwnerSay("Can use llStartAnimation"); | |||
if(perm & PERMISSION_ATTACH) | |||
llOwnerSay("Can use llAttachToAvatar"); | |||
if(perm & PERMISSION_CHANGE_LINKS) | |||
llOwnerSay("Can use llCreateLink"); | |||
if(perm & PERMISSION_TRACK_CAMERA) | |||
llOwnerSay("Can use llGetCameraPos"); | |||
if(perm & PERMISSION_CONTROL_CAMERA) | |||
llOwnerSay("Can use llSetCameraParams"); | |||
} | |||
}</source> | |||
|helpers | |helpers | ||
|also_functions={{LSL DefineRow||[[llGetPermissionsKey]]|Get the avatar who granted permissions.}} | |also_functions={{LSL DefineRow||[[llGetPermissionsKey]]|Get the avatar who granted permissions.}} |
Latest revision as of 02:41, 22 January 2015
LSL Portal | Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Categorized Library | Tutorials |
Summary
Function: integer llGetPermissions( );0.0 | Forced Delay |
10.0 | Energy |
Returns an integer bitfield with the script permissions granted
Constants | Action | Category | Granter | Automatically granted when… | |
---|---|---|---|---|---|
PERMISSION_DEBIT | 0x2 | take money from agent's account | Money | Owner | |
PERMISSION_TAKE_CONTROLS | 0x4 | take agent's controls | Control | Anyone | sat on, attached |
PERMISSION_TRIGGER_ANIMATION | 0x10 | start or stop Animations on agent | Animation | Anyone | sat on, attached |
PERMISSION_ATTACH | 0x20 | attach/detach from agent | Attachment | Owner or Anyone | attached |
PERMISSION_CHANGE_LINKS | 0x80 | change links | Link | Owner | |
PERMISSION_TRACK_CAMERA | 0x400 | track the agent's camera position and rotation | Camera | Anyone | sat on, attached |
PERMISSION_CONTROL_CAMERA | 0x800 | control the agent's camera (must be sat on or attached; automatically revoked on stand or detach) |
Camera | Anyone | sat on, attached |
PERMISSION_TELEPORT | 0x1000 | teleport the agent | Teleport | Anyone[1] | |
PERMISSION_SILENT_ESTATE_MANAGEMENT | 0x4000 | manage estate access without notifying the owner of changes | Estate | Owner | |
PERMISSION_OVERRIDE_ANIMATIONS | 0x8000 | configure the overriding of default animations on agent | Animation | Anyone | attached |
PERMISSION_RETURN_OBJECTS | 0x10000 | Used by llReturnObjectsByOwner and llReturnObjectsByID to return objects from parcels | Cleanup | Owner, Group Owner |
Examples
default
{
state_entry()
{
llRequestPermissions(llGetOwner(),
//Comment out any of the following lines for fun
PERMISSION_DEBIT |
PERMISSION_TAKE_CONTROLS |
PERMISSION_TRIGGER_ANIMATION |
PERMISSION_ATTACH |
PERMISSION_CHANGE_LINKS |
PERMISSION_TRACK_CAMERA |
PERMISSION_CONTROL_CAMERA |
0);
}
touch_start(integer a)
{
integer perm = llGetPermissions();
if(perm & PERMISSION_DEBIT)
llOwnerSay("Can use llGiveMoney");
if(perm & PERMISSION_TAKE_CONTROLS)
llOwnerSay("Can use llTakeControls");
if(perm & PERMISSION_TRIGGER_ANIMATION)
llOwnerSay("Can use llStartAnimation");
if(perm & PERMISSION_ATTACH)
llOwnerSay("Can use llAttachToAvatar");
if(perm & PERMISSION_CHANGE_LINKS)
llOwnerSay("Can use llCreateLink");
if(perm & PERMISSION_TRACK_CAMERA)
llOwnerSay("Can use llGetCameraPos");
if(perm & PERMISSION_CONTROL_CAMERA)
llOwnerSay("Can use llSetCameraParams");
}
run_time_permissions(integer perm)
{
if(perm & PERMISSION_DEBIT)
llOwnerSay("Can use llGiveMoney");
if(perm & PERMISSION_TAKE_CONTROLS)
llOwnerSay("Can use llTakeControlls");
if(perm & PERMISSION_TRIGGER_ANIMATION)
llOwnerSay("Can use llStartAnimation");
if(perm & PERMISSION_ATTACH)
llOwnerSay("Can use llAttachToAvatar");
if(perm & PERMISSION_CHANGE_LINKS)
llOwnerSay("Can use llCreateLink");
if(perm & PERMISSION_TRACK_CAMERA)
llOwnerSay("Can use llGetCameraPos");
if(perm & PERMISSION_CONTROL_CAMERA)
llOwnerSay("Can use llSetCameraParams");
}
}
See Also
Events
• | run_time_permissions | – | Permission receiver event |
Functions
• | llGetPermissionsKey | – | Get the avatar who granted permissions. | |
• | llRequestPermissions | – | Request permissions |