Difference between revisions of "LlRemoveFromLandPassList"

From Second Life Wiki
Jump to navigation Jump to search
m (added to parcel category)
m (lsl code tagging)
Line 9: Line 9:
|spec
|spec
|caveats
|caveats
|examples=<pre>// This is not a complete solution, requires full avatar names to work - even for unbanning someone!
|examples=
<lsl>
// 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 96: Line 98:
         command = "";
         command = "";
     }
     }
}</pre>
}
</lsl>
|helpers
|helpers
|also_header
|also_header

Revision as of 07:31, 3 April 2008

Summary

Function: llRemoveFromLandPassList( key avatar );
0.1 Forced Delay
10.0 Energy

Remove avatar from the land pass list.

• key avatar

Caveats

  • This function causes the script to sleep for 0.1 seconds.

Examples

<lsl> // 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;
       for (i=0; 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 = "";
   }

}

</lsl>

Deep Notes

Signature

function void llRemoveFromLandPassList( key avatar );