LlTarget/fr - Second Life Wiki

LlTarget/fr

From Second Life Wiki

Jump to: navigation, search

Contents

Description

Fonction: integer llTarget( vector position, float distance );

Cette fonction définie une cible de position et lance une détection de position.

Renvoie un integer permettant d'identifier la cible (cet identifiant sert à arrêter la détection avec llTargetRemove).

• vector position position de la cible
• float distance precision


La cible est une position définie par le vecteur position et les évènements déclenchés sont :
- at_target si l'objet scripté est a moins de distance de cette cible:
- not_at_target si l'objet est plus loin.

Cette fonction ne déplace pas d’objet, utilisez llSetPos ou llMoveToTarget.
Une fonction similaire existe pour les rotations : llRotTarget

Exemples

 
integer target_id; 
vector target_pos; 
 
default
{
    state_entry()
    {
        target_pos = llGetPos() + <1.0, 0.0, 0.0>;
        target_id = llTarget(target_pos, 0.5); // creation de la cible
    }
    at_target(integer tnum, vector targetpos, vector ourpos)
    {
        if (tnum == target_id)
        {
            llOwnerSay("objet dans le perimetre de la cible.");
            llOwnerSay("position de la cible : " + (string)targetpos + ", l’objet est a present a : " + (string)ourpos);
            llOwnerSay("ce qui correspond a une distance de  " + (string)llVecDist(targetpos, ourpos) + " metres de la cible");
            llTargetRemove(target_id); // suppression de la cible
        }
    }
    not_at_target()
    {
        llOwnerSay(
            "Objet hors perimetre – objet a la position " + (string)llGetPos() + 
            ", a " + (string)llVecDist(target_pos, llGetPos()) + 
            " metres de la cible (" + (string)target_pos + ")"
        );
    }
}
 

Voir également

Evènement

• at_target not_at_target Evènement de détection de la position
• at_rot_target not_at_rot_target Evènement de détection de la rotation

Fonctions

•  llTargetRemove Arrête la détection de position et supprime la cible
•  llRotTarget Crée une cible et lance une détection de rotation
•  llRotTargetRemove Arrête la détection de rotation et supprime la cible