script pour ecouter de loin sans crier

Répondre
Partager Rechercher
bonjour j'aurai voulu savoir si c'était possible de réussir a écouter une conversation sans être obliger d'utiliser le " shouts " pour ce qui sont trop loin.

exemple j'organise une conférence je place un objet devant la personne qui parle avec le script dedans et l'autre bout de la pièce je met un autre objet pour qu'il puisse lire ce que dit la personne qui est trop loin .

Je sais pas si c'est très clair lol.
merci d'avance pour votre aide.
vi ça s'appelle un micro et des enceintes
tu mets ça dans le micro:
Code:
integer act = 0;
integer lis = NULL_KEY;
string nom = "";

default {
  touch (integer num) {
      if (act == 0) {
        act == 1;
        nom = llDetectedName(0);
        lis = llListen(0, "", llDetectedKey(0), ""); }
      else {
         act == 0;
         nom = "";
         llListenRemove(lis); } }

  listen (integer num, string wd, key id, string mess) {
    llShout (17845, nom + " : " + mess); } }
tu actives / désactives le micro par click, et il retransmet tout ce que dit le cliqueur sur le canal 17845 en shout.

Et ça dans les HP:
Code:
default {
  state_entry () {
    llListen (17845, "", NULL_KEY, ""); }

  listen (integer num, string wd, key id, string mess) (
    llShout (0, mess); } }
ça te donne une portée de 200m environ pour l'orateur qui utilise le micro, en ajoutant des intermédiaire entre micro et hp, (listen sur un canal, shout sur un autre qu'écoute les HP), tu peux aller encore plus loin au prix de quelques prims.
cool merci et une autre petite question tu pense que c'est possible de faire que le script qui reçois ne soi reçu que par une personne exemple si je met des écouteurs une personne les portes et elle entend ce que dit la personne qui parle dans le micro mais si une autre personne est a coté elle n'entend pas si elle porte pas les écouteurs ^^
Euh oui avec llInstantMessage, mais faut voir, pour la key du receveur, si tu es propriétaire de l'objet c'est largement possible. Mais si la personne le porte non il faudra donc retouver ta key automatiquement, pas simple il me semble car il n'y a pas de fonction llName2Key.
désolé je débute en script ^^ si je vend par exemple les écouteurs celui qui achète sera propriétaire donc avec ta méthode tu me dit que c'est possible.
Mais le problème c'est que je sais pas ou mettre llInstantMessage dans le script.
quand SL sera redémarré j'essayerai sa =)
un écouteur acheté, ou créé, et porté par son propriétaire, il n'y a pas besoin d'IM, tu utilises llOwnerSay() et ça marche tout seul.

Le script pour écouteur porté qui irait avec le code du micro c'est:
Code:
efault {
  state_entry () {
    llListen (17845, "", NULL_KEY, ""); }

  listen (integer num, string wd, key id, string mess) (
    llOwnerSay (mess); } }
Mais les écouteurs doivent de toute façon être à moins de 100m du micro, sauf à avoir un bon système de répéteurs sur la surface du théâtre.
Ha moins que le but visé soit un système d"espionnage, et dans ce cas, il faut en passer par les mails entre objets, et la synchronisation d'objets pour la récupérations des keys.
Répondre

Connectés sur ce fil

 
1 connecté (0 membre et 1 invité) Afficher la liste détaillée des connectés