SensorRepeat
llSensorRepeat
Description
Fonction: llSensorRepeat( string nom, key id, integer type, float rayon, float arc, float rep );
Réalise un scan pour les nom et id du type indiqués dans le rayon (mètres) et l’arc (radians) indiqués et répète ce scan toutes les rep secondes.
• string
|
nom
|
–
|
Nom de l'objet ou de l'avatar recherché
|
|
• key
|
id
|
–
|
Clef (UUID) de l'objet ou de l'avatar recherché
|
|
• integer
|
type
|
–
|
masque des types recherchés (AGENT, ACTIVE, PASSIVE, SCRIPTED)
|
|
• float
|
rayon
|
–
|
rayon de recherche de 0.0 à 96.0m
|
|
• float
|
arc
|
–
|
la recherche est effectuée dans le cone d'angle arc par rapport à l'axe x de la prim. arc est entre 0 et PI
|
|
• float
|
rep
|
–
|
temps entre 2 scans
|
|
Si les données nom, id et/ou type sont vides ou nulles, elles sont ignorées.
Si id est une clé invalide ou une NULL_KEY, elle est considérée comme vide.
Consultez : llSensor pour une explication très intéressante de l’arc.
type Flag
|
Description
|
AGENT
|
0x1
|
Uilisé pour détecter des Agents.
|
ACTIVE
|
0x2
|
Utilisé par les senseurs pour trouver les objets qui se déplacent ou contenant un script actif.
|
|
type Flag
|
Description
|
PASSIVE
|
0x4
|
Utilisé pour trouver les objets immobiles ou les objets non-physiques non scriptés ou sans script actif.
|
SCRIPTED
|
0x8
|
Utilisé pour trouver les objets contenant un script actif.
|
|
Constantes (Float)
|
Arc
|
PI_BY_TWO
|
Une demie sphère
|
PI
|
Une sphère complète
|
Avertissements
- La vitesse de répétition du senseur est affectée par la dilatation temporelle (lag) de la région.
- Quand un événement sensor est mis en queue il efface tous les autres déjà présent dans la queue.
- Pour qu'un événement no_sensor puisse arriver le script doit comporter un évènement sensor même vide.
Exemples
Nomme les personnes à proximité.
<source lang = lsl2>float range = 3.0; // mètres
float interval = 5.0; // secondes
default
{
state_entry()
{
llSensorRepeat("", "", AGENT, range, TWO_PI, interval); // active le scanner.
// recherché des avatars dans toutes les directions
}
sensor (integer numberDetected)
{
string msg = "Detecté(s) : "+(string) numberDetected+" avatar(s): ";
integer i;
msg += llDetectedName(0);
for (i = 1; i < numberDetected; i++)
{
msg += ", ";
msg += llDetectedName(i);
}
llWhisper(0, msg);
}
no_sensor()
{
llWhisper(0, "Personne de détecté.");
}
}</source>
Voir également
Évènement
•
|
sensor
|
–
|
Evènement déclenché quand le senseur détecte quelque chose.
|
|
•
|
no_sensor
|
–
|
Evènement déclenché quand le senseur ne détecte rien
|
|
Fonctions
Vous cherchez encore des informations ? Peut-être
cette page du LSLwiki pourra vous renseigner.