Difference between revisions of "LlAddToLandBanList"
Jump to navigation
Jump to search
m |
m |
||
(One intermediate revision by one other user not shown) | |||
Line 11: | Line 11: | ||
* Must be owned by the land owner. | * Must be owned by the land owner. | ||
|constants | |constants | ||
|examples=< | |examples=<source lang="lsl2">// This is not a complete solution, requires full avatar names to work - even for unbanning someone! | ||
// This is meant only as an example of the land ban and pass management functions. | // This is meant only as an example of the land ban and pass management functions. | ||
// free to copy, use, modify, distribute - just don't ask me to debug your modified code. ;-) | // free to copy, use, modify, distribute - just don't ask me to debug your modified code. ;-) | ||
Line 98: | Line 98: | ||
command = ""; | command = ""; | ||
} | } | ||
}</ | }</source> | ||
|helpers | |helpers | ||
|also_functions= | |also_functions= | ||
Line 110: | Line 110: | ||
|also_articles | |also_articles | ||
|issues | |issues | ||
|haiku= | |||
{{Haiku|All are welcome here|except for the following|who have annoyed me}} | |||
|cat1=Security | |cat1=Security | ||
|cat2=Parcel | |cat2=Parcel |
Latest revision as of 23:09, 21 January 2015
LSL Portal | Functions | Events | Types | Operators | Constants | Flow Control | Script Library | Categorized Library | Tutorials |
Summary
Function: llAddToLandBanList( key avatar, float hours );0.1 | Forced Delay |
10.0 | Energy |
Add avatar to the land ban list for hours, or indefinitely if hours is zero.
• key | avatar | – | avatar UUID | |
• float | hours |
Caveats
- This function causes the script to sleep for 0.1 seconds.
- Must be owned by the land owner.
Examples
// This is not a complete solution, requires full avatar names to work - even for unbanning someone!
// This is meant only as an example of the land ban and pass management functions.
// free to copy, use, modify, distribute - just don't ask me to debug your modified code. ;-)
//
// Commands are:
// /5 ban:full_avatar_name
// /5 tempban:full_avatar_name
// /5 unban:full_avatar_name
// /5 pass:full_avatar_name
// /5 unpass:full_avatar_name
// /5 clearban
// /5 clearpass
string command;
default
{
state_entry()
{
llListen(5, "", llGetOwner(), "");
}
on_rez(integer param)
{
llResetScript();
}
listen(integer chan, string name, key id, string message)
{
if (command != "")
{
llOwnerSay("Sorry, still processing last command, try again in a second.");
}
list args = llParseString2List(message,[":"],[]);
command = llToLower(llList2String(args,0));
if (command == "clearbans")
{
llResetLandBanList();
}
if (command == "clearpass")
{
llResetLandPassList();
}
else
{
llSensor(llList2String(args,1),NULL_KEY,AGENT,96,PI);
}
}
no_sensor()
{
command = "";
}
sensor(integer num)
{
integer i = 0;
for (; i < num; ++i)
{
if (command == "ban")
{
// Ban indefinetely
llAddToLandBanList(llDetectedKey(i),0.0);
}
if (command == "tempban")
{
// Ban for 1 hour.
llAddToLandBanList(llDetectedKey(i),1.0);
}
if (command == "unban")
{
llRemoveFromLandBanList(llDetectedKey(i));
}
if (command == "pass")
{
// Add to land pass list for 1 hour
llAddToLandPassList(llDetectedKey(i),1.0);
}
if (command == "unpass")
{
llRemoveFromLandPassList(llDetectedKey(i));
}
}
command = "";
}
}