LlClearLinkMedia/fr

From Second Life Wiki
< LlClearLinkMedia
Revision as of 15:17, 29 June 2013 by Miranda Umino (talk | contribs) (adding translation of the table of return codes)
Jump to navigation Jump to search

Description

Fonction: integer llClearLinkMedia( integer link, integer face );

Supprime tous les médias et leurs paramètres spécifiés par llSetPrimMediaParams ou llSetLinkMedia pour la face de la ( ou les ) prim numéro link.

Renvoie un integer retourne un code de retour STATUS_* qui détaille la réussite ou l'échec de la fonction

• integer link
• integer face
Success/Failure Flags Description
STATUS_OK 0 Retour avec succès
STATUS_MALFORMED_PARAMS 1000 Fonction appelée avec des paramètres mal-formatés
STATUS_TYPE_MISMATCH 1001 Erreur de type sur un des arguments passés à la fonction
STATUS_BOUNDS_ERROR 1002 Un des arguments a une erreur de domaines limites
STATUS_NOT_FOUND 1003 Objet non trouvé
STATUS_NOT_SUPPORTED 1004 Non supporté
STATUS_INTERNAL_ERROR 1999 Erreur interne
STATUS_WHITELIST_FAILED 2001 Erreur sur la liste blanche d'URLs authorisées

Exemples

<lsl> // Parcoure toutes les prims d' un objet et toutes les faces de chacune des prims pour supprimer les medias qui sont en cours // Puis , le script se supprime de lui même


integer GetPrimCount() {

   if(llGetAttached())
       return llGetNumberOfPrims();
   return llGetObjectPrimCount(llGetKey());

}

publish_returned_status_flag(integer inputLink, integer inputFace, integer inputStatus) {

   /* if (inputInteger == 0) */ string outputStatus = "STATUS_OK";
   if (inputStatus == 1000) outputStatus = "STATUS_MALFORMED_PARAMS";
   else if (inputStatus == 1001) outputStatus = "STATUS_TYPE_MISMATCH";
   else if (inputStatus == 1002) outputStatus = "STATUS_BOUNDS_ERROR";
   else if (inputStatus == 1003) outputStatus = "STATUS_NOT_FOUND";
   else if (inputStatus == 1004) outputStatus = "STATUS_NOT_SUPPORTED";
   else if (inputStatus == 1999) outputStatus = "STATUS_INTERNAL_ERROR";
   else if (inputStatus == 2001) outputStatus = "STATUS_WHITELIST_FAILED";
   // PUBLIC_CHANNEL has the integer value 0
   llSay(PUBLIC_CHANNEL, "llClearLinkMedia(link " + (string)inputLink
       + ", face " + (string)inputFace + ") = " + outputStatus + ";");

}

default {

   state_entry()
   {
       integer numOfPrims = GetPrimCount();
       integer numOfSides;
       integer link;
       integer face;
       if (1 < numOfPrims)
           link = 1;
       do
       {
           numOfSides = llGetLinkNumberOfSides(link);
           face = 0;
           do
           {
               integer clearLinkMediaSuccessFlag = llClearLinkMedia(link, face);
               publish_returned_status_flag(link, face, clearLinkMediaSuccessFlag);
               ++face;
           }
           while (face < numOfSides);
           if (numOfPrims == 1)
               jump continue;
           ++link;
       }
       while (link <= numOfPrims);
       @continue;
       string thisScript = llGetScriptName();
       llRemoveInventory(thisScript);
   }

} </lsl>

Voir également

Fonctions

•  llClearPrimMedia
•  llSetLinkMedia
•  llGetLinkMedia

Notes avancées

Historique

Date de Release 10/08/2011

Vous cherchez encore des informations ? Peut-être cette page du LSLwiki pourra vous renseigner.