Difference between revisions of "LlBreakLink/fr"

From Second Life Wiki
Jump to: navigation, search
(Loalized to french)
 
m (Big proofreading)
 
Line 3: Line 3:
 
{{LSL_Function/fr|func_id=142|func_sleep=0.0|func_energy=10.0|func=llBreakLink
 
{{LSL_Function/fr|func_id=142|func_sleep=0.0|func_energy=10.0|func=llBreakLink
 
|p1_type=integer|p1_name=numéro_lien
 
|p1_type=integer|p1_name=numéro_lien
|func_desc=Brise le lien correspond au numéro passé en argument.
+
|func_desc=Brise le lien qui correspond au numéro passé en argument.
 
|func_footnote
 
|func_footnote
 
|return_text
 
|return_text
Line 11: Line 11:
 
|examples=
 
|examples=
 
<lsl>
 
<lsl>
//-- Demande la permission de changer les liens, puis brise le lien
+
// Demande le droit de changer les liens, puis, lorsque l'on touche l'objet,
//-- entre l'objet et la prim contenant le script (sur un touché).
+
// brise le lien entre l'objet et la prim contenant le script.
default{
+
default
   state_entry(){
+
{
 +
   state_entry()
 +
  {
 
     llRequestPermissions( llGetOwner(), PERMISSION_CHANGE_LINKS );
 
     llRequestPermissions( llGetOwner(), PERMISSION_CHANGE_LINKS );
 
   }
 
   }
 
   
 
   
   run_time_permissions( integer vBitPermissions ){
+
   run_time_permissions( integer droits )
     if (PERMISSION_CHANGE_LINKS & vBitPermissions){
+
  {
       state sMain;
+
     if (PERMISSION_CHANGE_LINKS & droits )
     }else{
+
       state enRoute;
 +
     else
 
       llResetScript();
 
       llResetScript();
    }
 
 
   }
 
   }
 
}
 
}
 
   
 
   
state sMain{}
+
state enRoute
   touch_start( integer vIntTouched ){
+
{
 +
   touch_start( integernombre_touche )
 +
  {
 
     llBreakLink( LINK_THIS );
 
     llBreakLink( LINK_THIS );
 
   }
 
   }

Latest revision as of 11:41, 6 April 2008

Description

Fonction: llBreakLink( integer numéro_lien );

Brise le lien qui correspond au numéro passé en argument.

• integer numéro_lien N° de lien (0: non lié, 1: prim racine, >1: prims filles) ou un code LINK_*

Nécessite le droit PERMISSION_CHANGE_LINKS pour s'exécuter, droit accordé par le propriétaire.

Codes Descriptions
LINK_ROOT 1 Envoie à la la prim racine.
LINK_SET -1 Envoie à toutes les prims.
LINK_ALL_OTHERS -2 Envoie à toutes les autres prims
Codes Description
LINK_ALL_CHILDREN -3 Envoie à toutes les prims filles
LINK_THIS -4 Envoie à la prim contenant ce script.

Avertissements

  • Ne vous reposez pas sur les droits accordés automatiquement à soi-même. Utilisez toujours l'évènement run_time_permissions.
  • Si le script n'a pas le droit PERMISSION_CHANGE_LINKS, il renverra (en criant) une erreur sur le canal DEBUG_CHANNEL et l'opération échouera (mais le script continuera à s'exécuter).
  • Si PERMISSION_CHANGE_LINKS est accordé par quelqu'un d'autre que le propriétaire, lorsque la fonction est appelée, une erreur est renvoyée (en criant) sur le canal DEBUG_CHANNEL.
  • Une fois que le droit PERMISSION_CHANGE_LINKS est accordé, il peut être révoqué depuis le script (par exemple avec un nouvel appel à llRequestPermissions). Sinon le script ne perdra ses droits que s'il est réinitialisé ou dérezzé (effacé, détaché ou repris).

Exemples

<lsl> // Demande le droit de changer les liens, puis, lorsque l'on touche l'objet, // brise le lien entre l'objet et la prim contenant le script. default {

 state_entry()
 {
   llRequestPermissions( llGetOwner(), PERMISSION_CHANGE_LINKS );
 }

 run_time_permissions( integer droits )
 {
   if (PERMISSION_CHANGE_LINKS & droits )
     state enRoute;
   else
     llResetScript();
 }

}

state enRoute {

 touch_start( integernombre_touche )
 {
   llBreakLink( LINK_THIS );
 }

} </lsl>

Voir également

Évènement

•  run_time_permissions Évènement de réception des droits

Fonctions

•  llGetLinkNumber Renvoie le N° de lien de la prim le contenant.
•  llGetPermissions Renvoie les droits accordés
•  llGetPermissionsKey Renvoie l'agent qui a accordé les droits
•  llRequestPermissions Demande des droits
•  llBreakAllLinks Brise tous les liens de l'objet

Articles

•  Droit des scripts Article sur les droits
Vous cherchez encore des informations ? Peut-être cette page du LSLwiki pourra vous renseigner.