|
Librairie Scripts
|
|
Écrit par Garmin K
|
|
Il existe une fonction : string llKey2Name(key id) mais elle ne fonctionne que si l'objet ou l'avatar porteur de la clé se trouve sur la même sim que le script Voici comment récupérer un nom à partir d'une clé, méthode valable dans tous les cas. Ceci est une démonstration qu'il faudra adapter à la situation
//Voici comment récupérer un nom à partir d'une clé //méthode valable dans tous les cas. // Ceci est une démonstration qu'il faudra adapter à la situation integer iChannel = 88; // Canal pour interroger key kSearch; // La clé dont on veut savoir le nom key kHandle; // le numéro de requête default { state_entry() { llSetText("Key2Name\n" + (string)iChannel, <0.111, 0.555, 1.0>, 1.0); llListen(iChannel, "", "", ""); //en écoute sur le canal } listen(integer iChan, string sName, key kId, string sMessage) { kSearch = (key)sMessage; //Voici la requête pour obtenir le nom kHandle = llRequestAgentData(kSearch, DATA_NAME); } //la réponse à la requête dataserver(key kQueryid, string sData) { if(kQueryid == kHandle) { llSay(0, (string)kSearch + " = " + sData); } } //Pour obtenir la syntaxe sur le chat touch_start(integer total_number) { llSay(0, "/" + (string)iChannel + " aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee"); } }
|
Glisser ce script dans un objet Près de l'objet, poser la question dans le chat comme : /88 244195d6-c9b7-4fd6-9229-c3a8b2e60e81 Lire la réponse dans le chat Si il y a plusieurs demande à faire, utiliser // les fois suivantes Exemple : /88 244195d6-c9b7-4fd6-9229-c3a8b2e60e81 //45bec867-2467-49d9-9986-76d16fa68cb0 etc
|