LlAddToLandBanList - Second Life Wiki

LlAddToLandBanList

From Second Life Wiki

Jump to: navigation, search

Contents

Summary

Function: llAddToLandBanList( key avatar, float hours );

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.

Important Issues

~ All Issues ~ Search JIRA for related Bugs
   llAddToLandBanList, either permanently or no more than 8640 minutes (aka: 144 hours/6 days)

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 = "";
    }
}

Deep Notes

All Issues

~ Search JIRA for related Issues
   llAddToLandBanList, either permanently or no more than 8640 minutes (aka: 144 hours/6 days)

Haiku

All are welcome here
except for the following
who have annoyed me

This article wasn't helpful for you? Maybe the related article at the LSL Wiki is able to bring enlightenment.