LlRezAtRoot/fr

From Second Life Wiki
Jump to navigation Jump to search

Description

Fonction: llRezAtRoot( string inventaire, vector position, vector vitesse, rotation rot, integer param );

Crée (rez) l'objet inventaire avec sa prim racine à la pos indiquée et avec la vitesse vit, la rotation rot et les paramètres de départ param

• string inventaire un objet de l'inventaire
• vector position position dans le référentiel régional)
• vector vitesse vitesse initiale (de norme maximale 250)
• rotation rot initial rotation
• integer param paramètres récupérés par l'évènement on_rez et la fonction llGetStartParameter dans l'objet rez.

La masse de l'objet peut introduire un délai supplémentaire au rez.
Pour rez un objet avec son centre à la pos indiquée (au lieu de la prim racine) utilisez llRezObject

Avertissements

  • Cette fonction fait dormir le script pendant 0.1 secondes.
  • Si inventaire n'est pas dans l'inventaire de la prim ou n'est pas un objet alors une erreur se produit sur le canal DEBUG_CHANNEL.
  • En plus des délais de la fonction, il y a un délai supplémentaire basé sur la masse et la vitesse de l'objet rez.
    • rez_delai = masse * llVecMag(vitesse) / 10; [1]
  • Echoue silencieusement si l'objet à rez a sa pos à plus de 10 métres.
  • Si le propriétaire de l'objet n'a pas les droits de copie sur l'objet inventaire, l'objet ne sera plus présent dans l'inventaire de l'objet rezzeur aprés le rez. (Une nouvelle tentative de rez échouera.). Si le propriétaire a les droits de copie, alors l'objet sera rez et l'original restera dans l'inventaire.
  • Echoue silencieusement si vous n'avez pas les pouvoirs de création d'objets sur la parcelle. Vous devez donc donc :
    • Soit posséder la parcelle, soit être dans le groupe qui la possède et qu'elle permette la création d'objets aux membres du groupe.
    • Soit être sur une parcelle qui autorise tout le monde à créer des objets.
    • Vous pouvez également donner l'objet au groupe qui possède la parcelle.

Exemples

<lsl>//Rez un objet sur un touché string object = "Object";//Objet dans l'inventaire integer start_param = 10; rotation rot;

default {

   state_entry()
   {
       rot = llEuler2Rot(< 0, 90, 90> * DEG_TO_RAD);
   }
   touch_start(integer a)
   {
       vector vec = llGetPos() + < 0.0, 0.0, 5.0>; // 5 mètres plus loin 
       vector speed = llGetVel();
       llRezAtRoot(object, vec, speed, rot, start_param);
   }

} </lsl>

Voir également

Évènement

•  object_rez Evènement déclenché quand un objet rez un autre objet de son inventaire

Fonctions

•  llRezObject Rez un objet
•  llGetStartParameter renvoie les paramètres indiqués au rez
•  llGodLikeRezObject Rez un objet avec son UUID
Vous cherchez encore des informations ? Peut-être cette page du LSLwiki pourra vous renseigner.