Difference between revisions of "LlResetLandBanList/fr"

From Second Life Wiki
Jump to navigation Jump to search
m
(relecture et re-synchronisation)
 
Line 10: Line 10:
|spec
|spec
|caveats
|caveats
|examples=<lsl>// Script de shenanigan oh
|examples=<lsl>
 
// Ce script necessite le nom complet de l'avatar pour fonctionner
// C’est un script simple que j’utilisais lorsque je travaillais
// il est fourni comme exemple d'utilisation des fonctions de controle d'acces.
// sur un massacre pour une sim pvp, il était en effet beaucoup
//  
// plus simple d’expulser quelqu'un de cette façon que de cliquer
// Les commandes de chat sont:
// sur lui en lui courant après.
//   /5 ban:nom_complet
// Exemple: /1 eject shenan
//   /5 tempban:nom_complet
 
//   /5 unban:nom_complet
// Attention, si vous tapez le nom d’une personne, faites bien attention
//  /5 pass:nom_complet
// à ce que personne d’autres dans les environs n’ait le même nom !
//  /5 unpass:nom_complet
string msg;
//   /5 clearban
string name;
//   /5 clearpass
string command;
default
default
{
{
     on_rez(integer n)
     state_entry()
     {
     {
         llResetScript();
         llListen(5, "", llGetOwner(), "");
     }
     }
   
     state_entry()
     on_rez(integer param)
     {
     {
         llListen(1, "", llGetOwner(), "");
         llResetScript();
        llListen(0, "", llGetOwner(), "");
     }
     }
 
     listen(integer n, string m, key k, string msg)
     listen(integer chan, string name, key id, string message)
     {
     {
         if (llGetSubString(msg, 0, 5) == "eject ")
         if (command != "")
        {
            llOwnerSay("Desole, le traitement de la commande precedente est encore en cours, retentez dans un moment.");
        }
        list args = llParseString2List(message,[":"],[]);
        command = llToLower(llList2String(args,0));
        if (command == "clearbans")
        {
            llResetLandBanList();
        }
        if (command == "clearpass")
        {
            llResetLandPassList();
        }
        else
         {
         {
             name = llToLower(llStringTrim(llDeleteSubString(msg, 0, 5), STRING_TRIM));
             llSensor(llList2String(args,1),NULL_KEY,AGENT,96,PI);
            llSensor("", "", AGENT, 96, PI);
         }
         }
     }
     }
      
     sensor(integer n)
    no_sensor()
    {
        command = "";
     }
     sensor(integer num)
     {
     {
         integer i = 0;
         integer i;
         for (;i<n;++i)
         for (i=0; i< num; ++i)
         {
         {
             if (llOverMyLand(llDetectedKey(i)))
             if (command == "ban")
            {
                // Bannir indefiniment un avatar
                llAddToLandBanList(llDetectedKey(i),0.0);
            }
            if (command == "tempban")
            {
                // Bannir un avatar pour 1h
                llAddToLandBanList(llDetectedKey(i),1.0);
            }
            if (command == "unban")
            {
                // Supprimer le bannissement d'un avatar
                llRemoveFromLandBanList(llDetectedKey(i));
            }
            if (command == "pass")
            {
                // Ajouter un avatar a la liste d'acces
                llAddToLandPassList(llDetectedKey(i),1.0);
            }
            if (command == "unpass")
             {
             {
                 if (~llSubStringIndex(llToLower(llDetectedName(i)), name))
                 // Supprimer un avatar de la liste d'acces
                 {
                 llRemoveFromLandPassList(llDetectedKey(i));
                    llOwnerSay("Ejection de " + llDetectedName(i));
                    llEjectFromLand(llDetectedKey(i));
                }
             }
             }
         }
         }
        command = "";
     }
     }
    no_sensor()
}
    {
</lsl>
        llOwnerSay("Avatar non trouvé");
    }
}</lsl>
|helpers
|helpers
|also_header
|also_header

Latest revision as of 05:50, 29 May 2009

Description

Fonction: llResetLandBanList( );

Vide la liste des bannis


Avertissements

  • Cette fonction fait dormir le script pendant 0.1 secondes.

Exemples

<lsl> // Ce script necessite le nom complet de l'avatar pour fonctionner // il est fourni comme exemple d'utilisation des fonctions de controle d'acces. // // Les commandes de chat sont: // /5 ban:nom_complet // /5 tempban:nom_complet // /5 unban:nom_complet // /5 pass:nom_complet // /5 unpass:nom_complet // /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("Desole, le traitement de la commande precedente est encore en cours, retentez dans un moment.");
       }

       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")
           {
               // Bannir indefiniment un avatar 
               llAddToLandBanList(llDetectedKey(i),0.0);
           }
           if (command == "tempban")
           {
               // Bannir un avatar pour 1h
               llAddToLandBanList(llDetectedKey(i),1.0);
           }
           if (command == "unban")
           {
               // Supprimer le bannissement d'un avatar
               llRemoveFromLandBanList(llDetectedKey(i));
           }
           if (command == "pass")
           {
               // Ajouter un avatar a la liste d'acces
               llAddToLandPassList(llDetectedKey(i),1.0);
           }
           if (command == "unpass")
           {
               // Supprimer un avatar de la liste d'acces
               llRemoveFromLandPassList(llDetectedKey(i));
           }
       }
       command = "";
   }

} </lsl>

Voir également

Fonctions

•  llAddToLandBanList Ajoute un avatar à la liste des bannis
•  llAddToLandPassList Ajoute un avatar à la liste des droits de passage
•  llRemoveFromLandPassList Supprime un avatar de la liste des droits de passage
•  llRemoveFromLandBanList Supprime un avatar de la liste des bannis
•  llResetLandPassList Réinitialise la liste des droits de passage
Vous cherchez encore des informations ? Peut-être cette page du LSLwiki pourra vous renseigner.