Group Authorization
Revision as of 21:29, 24 January 2015 by ObviousAltIsObvious Resident (talk | contribs) (<lsl> tag to <source>)
LSL Portal | Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Categorized Library | Tutorials |
Group Authorization
This script is used to check whether the object is set to the appropriate group (by group key).
The Script
// © 2009 Chase Quinnell and TerraCo Designs
// http://www.terracodesigns.com
// Please keep this open source and leave my name reference here
// This is the group key for the authorized group.
string authgroupkey = "INSERT YOUR GROUP KEY HERE";
Unauthorized()
{
string thisScript = llGetScriptName();
llOwnerSay("/me [" + thisScript + "]: Sorry, you're wearing the wrong group tag.");
llDetachFromAvatar();
llRemoveInventory(thisScript);
llDie();
}
default
{
on_rez(integer start_param)
{
llResetScript();
}
state_entry()
{
key ownerKey = llGetOwner();
llRequestPermissions(ownerKey, PERMISSION_ATTACH);
key thisPrimsKey = llGetKey();
string groupKey = llList2String(llGetObjectDetails(thisPrimsKey, [OBJECT_GROUP]), 0);
if (groupKey != authgroupkey)
Unauthorized();
else
llOwnerSay("Authorization passed");
}
run_time_permissions(integer perm)
{
if (!(perm & PERMISSION_ATTACH))
llResetScript();
}
}