Script récupération list de notecard

Répondre
Partager Rechercher
Bonjour à tous,

Voilà ma petite demande :

Je souhaiterais savoir comment faire pour récupérer la liste des lignes d'une notecard pour qu'elle s'affiche dans un menu bleu en haut a droite de l'écran.

Merci d'avance pour vos réponses.

Ghis.
Bonjour,

tu trouveras ci-dessous un exemple pour lire une notecard :

Code PHP:

key g_keyNotes;

default()
{
    
state_entry()
    {
    }

    
touch_start(integer num_detected)
    {
        
// read line 0 from notecard called "foobar"

        
g_keyNotes llGetNotecardLine("foobar",0);
    }

    
dataserver(key requestedstring data)
    {
        if ( 
requested == g_keyNotes )  // make sure we are getting the data we want
        
{
            
g_keyNotes NULL_KEY;
            if ( 
data != EOF )
            {
                
llWhisper(0,data);
            }
        }
    }

pour la fenetre bleu (de dialogue je pense) regarde la fonction : llDialog
Salut jimbi

D'abord merci pour ta réponse.

Pour la fonction llDialog ya pas de soucis...

Mais en gros j'explique mon script :

1/ Je le lance (la fenêtre bleu s'affiche).
2/ Chaque bouton sur la fenêtre réfère a une notecard.
3/ Lorsque je clic sur un bouton, je voudrais que chaque ligne écrite dans la notecard soit redéfini comme un bouton d'une nouvelle fenêtre bleu. Mais il faudrait que je ne nomme pas les lignes car elles seront nommées aléatoirement ainsi que le nombre.

Pour le nombre de lignes, je pense a un llListIntegerList

Je pense que j'ai expliqué en gros ma recherche...

Ghis.
Donc, si j'ai bien compris, dans ta première fenetre de dialogue chaque bouton est associé avec une notecard (note,note2,note3)
dans ta notecard note1, par exemple tu as n lignes et chaque ligne doit être un bouton dans ta seconde fenetre de dialogue

Si c'est bien ça, à mon avis, ta notecarde note1 devrait avoir à peut près cette structure :

// première ligne titre de la boite de dialogue
Faites un second choix

// les boutons
premier bouton
second bouton
troisieme bouton


ainsi la création de la boite se ferait dynamiquement en lisant le fichier note1

Code PHP:

    dataserver(key requestedstring data)
    {
        if ( 
requested == g_keyNotes )  // make sure we are getting the data we want
        
{
            
g_keyNotes NULL_KEY;
            if ( 
data != EOF )
            {
                if (( 
llStringLenght(data) > 0) && (llGetSubstring(data,0,2) != "//" ))
                {
                  
arr_bouton += data;
                  
                }

            }
        }
    } 
a la sortie du dataserver, tu as dans arr_bouton la liste des boutons, tu disposes de toutes les fonctions de manipulation de liste à l'adresse suivante :

http://wiki.secondlife.com/wiki/List
Bonjour,

Hier, je n'ai pas réussi à intégrer le script que tu m'as donné jimbi.

En gros, voilà ma ligne de script :

Code:
 
list MENU_MAIN = ["Text", "Text", "Text", "...Back"]; // a submenu
A chaque "Text", je cherche à faire correspondre une ligne de ma notecard.

Les lignes de la notecard sont des SLURL et je souhaiterais que les boutons n'affichent que le lieu...

Est-il possible de le faire?

Ghis.
si le but est de se teleporter vers un lieu à l'aide des boutons, je crains que ca ne marche pas. Il me semble que la teleportation vers une autre sim ne fonctionne que à l'aide de landmark donnés par l'objet ...
bonjour

Donc si je comprend bien, je ne peux pas faire lire au script une SLURL sur une ligne de notecard...

Sinon y a-t-il un autre moyen que le landmark? Parce que par landmark, il faudrait modifier le script a chaque fois que je rajoute une destination...

Est-il possible de générer un landmark par notecard???

Ghis.
Citation :
Publié par Ghislain Beaumont
Donc si je comprend bien, je ne peux pas faire lire au script une SLURL sur une ligne de notecard...
si tu peux, mais ça ne télé-portera personne.

Citation :
Sinon y a-t-il un autre moyen que le landmark? Parce que par landmark, il faudrait modifier le script a chaque fois que je rajoute une destination...
non.
Tu peux donner les LM comme tu veux, c'est toi qui va donner un LM par llGiveItem(), donc si tu rajoutes une destination, tu rajoutes un LM avec le nom de la destination, et ton script, grâce à l'événement changed() va le savoir tout seul et le traiter.

Citation :
Est-il possible de générer un landmark par notecard???
oui. ou plusieurs LM par notecard, ou plusieurs notecard par LM, c'est toi qui voies et qui crées ton script en conséquence.
Répondre

Connectés sur ce fil

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