llAvatarOnSitTarget

From Second Life Wiki
Revision as of 00:57, 8 December 2007 by Xenex Habilis (talk | contribs)
Jump to navigation Jump to search

Summary

Function: key llAvatarOnSitTarget( );
0.0 Forced Delay
10.0 Energy

Returns a key

Retourne le UUID de l'avatar assis sur le prim.

SI le prim ne trouve pas de 'sit target' ou si il n'y a pas d'avatar assis sur le prim, alors NULL_KEY est retourné.

Caveats

  • Un prim n'a pas de 'sit target' sans que llSitTarget soit crée avec un vecteur non nul.
  • Si le prim ne trouve pas de 'sit target' ou si l'avatar est assis sur un prim different,la seule façon de determiner combien et quel avatar est assis sur l'objet est de scanner le link set1.

Examples

default
{
    state_entry()
    {
        // Creation du sit target, sinon la fonction ne marche pas 
        llSitTarget(<0.0, 0.0, 0.1>, ZERO_ROTATION);
    }

    changed(integer change) {
        if (change & CHANGED_LINK) { 
            key av = llAvatarOnSitTarget();
            if (av) {//VRAI si la clé de l'avatar existe et est valide
                llSay(0, "Salut " + llKey2Name(av) + ", Merci de vous etre assis");
            }
        }
    }
}

Useful Snippets

//Donne le numero de link de l'avatar assis
integer GetAgentLinkNumber(key avatar)
{
    integer linkNum = 1 + llGetNumberOfPrims();
    key linkKey;
    //Apres nous prendrond le linkKey soyez sur qu'il est non nul sinon cela ne marchera pas.
    while((linkKey = llGetLinkKey( --linkNum )))//est ce que la clé est valide?
        if(avatar == linkKey)//est ce le bon avatar?
            return linkNum;//C'est le bon avatar.
    //L'avatar n'a pas été trouvé
    //retounre un nombre, ce n'est pas une balise LINK_* ni un numero de link valide.
    return 0x7FFFFFFF;//max int.
}//Written by Strife Onizuka

Notes

  1. Pour scanner un link set utliser une fonction comme llGetLinkKey (voir llGetNumberOfPrims#Useful_Snippetscomme exemple).
  2. La position d'un avatar assis sur un prim peut etre determiné avec llGetObjectDetails (voir llSitTarget#Useful_Snippetscomme exemple).

See Also

Events

•  changed

Functions

•  llSitTarget
•  llGetLinkKey

Deep Notes

Signature

function key llAvatarOnSitTarget();