Tableaux à touches virtuelles pour un hud.

Répondre
Partager Rechercher
Citation :
Publié par Gaelle Minois
Arf j'ai un soucis, il ne veux pas enregistrer le script de réception, il me dit qu'il y a une erreur de syntaxe à (11,0) soit devant "default".
Copie bien tout le code, il n'y a pas de raison que ça ne fonctionne pas. Si jamais il y a des soucis dans le codage des caractères à la copie passe par l'intermédiaire du bloc-note de Windows, il supprimera tous les caractères spéciaux.
Bon apparemment c’était bien un soucis de copie j'ai pu l'enregistrer.

Par contre pas moyen de faire fonctionner ce nouveau système, par mon essais, le script etend les touches a tous les prims du hud malgré la liste de prims specifiées et aucune uuid n'est envoyée, je dois faire quelque chose de travers...
Question à deux euros: est-il possible de spécifier les prims qui doivent être utilisés pour les touches virtuelles en faisant une liste de leurs noms et non de leur linkset?

Code PHP:

// Script de commande dans le HUD

// Canal
integer iCanal = -XXXXXX;

// Liste des boutons
list lBoutons1 = [
    
"0",
    
"1",
    
"2",
    
"3",
    
"4",
    
"5",
    
"6",
    
"7",
    
"8",
    
"9",
    
"10",
    
"11",
    
"12",
    
"13",
    
"14",
    
"15"
    
];

list 
lBoutons2 = [
    
"0",
    
"1",
    
"2",
    
"3",
    
"4",
    
"5",
    
"6",
    
"7",
    
"8",
    
"9",
    
"10",
    
"11",
    
"12",
    
"13",
    
"14",
    
"15"
    
];

list 
lBoutons3 = [
    
"0",
    
"1",
    
"2",
    
"3",
    
"4",
    
"5",
    
"6",
    
"7",
    
"8",
    
"9",
    
"10",
    
"11",
    
"12",
    
"13",
    
"14",
    
"15"
    
];

list 
lBoutons4 = [
    
"0",
    
"1",
    
"2",
    
"3",
    
"4",
    
"5",
    
"6",
    
"7",
    
"8",
    
"9",
    
"10",
    
"11",
    
"12",
    
"13",
    
"14",
    
"15"
    
];

list 
lBoutons5 = [
    
"0",
    
"1",
    
"2",
    
"3",
    
"4",
    
"5",
    
"6",
    
"7",
    
"8",
    
"9",
    
"10",
    
"11",
    
"12",
    
"13",
    
"14",
    
"15"
    
];

list 
lBoutons6 = [
    
"0",
    
"1",
    
"2",
    
"3",
    
"4",
    
"5",
    
"6",
    
"7",
    
"8",
    
"9",
    
"10",
    
"11",
    
"12",
    
"13",
    
"14",
    
"15"
    
];

list 
lBoutons7 = [
    
"0",
    
"1",
    
"2",
    
"3"
    
]; 

list 
lBoutons8 = [
    
"0",
    
"1",
    
"2",
    
"3"
    
];

// Textures
list lTextures1 = [
    
"1e5b3d96-61a3-b3a2-XXXX-3c24a0bd6ba5",
    
"7baf93b1-0635-bd12-XXXX-c95da1b20439",
    
"b43728c3-7bba-91e3-XXXX-abff206af5b3",
    
"c67fbf0d-77bd-2d7d-XXXX-dc044c7fa7a2",
    
"0f73c222-ca6d-802e-XXXX-10e755eed4c1",
    
"d9d1c68c-725e-9165-XXXX-0af56cb29962",
    
"7666b53b-b52b-cdf6-XXXX-46673716e82a",
    
"693e197d-1740-724f-XXXX-0c294d895ea3",
    
"e34395fd-2661-1907-XXXX-c60a80e86a94",
    
"d81287d4-7be5-86a5-XXXX-68b4bea821bf",
    
"3a3c4d83-b418-cb32-XXXX-1354dfbd97a3",
    
"b3f5ccc6-9404-15dd-XXXX-57f3ba2b2ffd",
    
"72a04292-6edf-3924-XXXX-a5778bfb6220",
    
"d3399219-ee8e-8bfe-XXXX-5f2c9e845821",
    
"cd7a090b-3a24-7085-XXXX-58cd95a6e139",
    
"f0a9ec09-19d0-0da0-XXXX-fa0c49a8da05"
        
];

list 
lTextures2 = [
    
"1e5b3d96-61a3-b3a2-XXXX-3c24a0bd6ba5",
    
"7baf93b1-0635-bd12-XXXX-c95da1b20439",
    
"b43728c3-7bba-91e3-XXXX-abff206af5b3",
    
"c67fbf0d-77bd-2d7d-XXXX-dc044c7fa7a2",
    
"0f73c222-ca6d-802e-XXXX-10e755eed4c1",
    
"d9d1c68c-725e-9165-XXXX-0af56cb29962",
    
"7666b53b-b52b-cdf6-XXXX-46673716e82a",
    
"693e197d-1740-724f-XXXX-0c294d895ea3",
    
"e34395fd-2661-1907-XXXX-c60a80e86a94",
    
"d81287d4-7be5-86a5-XXXX-68b4bea821bf",
    
"3a3c4d83-b418-cb32-XXXX-1354dfbd97a3",
    
"b3f5ccc6-9404-15dd-XXXX-57f3ba2b2ffd",
    
"72a04292-6edf-3924-XXXX-a5778bfb6220",
    
"d3399219-ee8e-8bfe-XXXX-5f2c9e845821",
    
"cd7a090b-3a24-7085-XXXX-58cd95a6e139",
    
"f0a9ec09-19d0-0da0-XXXX-fa0c49a8da05"
        
];

list 
lTextures3 = [
    
"1e5b3d96-61a3-b3a2-XXXX-3c24a0bd6ba5",
    
"7baf93b1-0635-bd12-XXXX-c95da1b20439",
    
"b43728c3-7bba-91e3-XXXX-abff206af5b3",
    
"c67fbf0d-77bd-2d7d-XXXX-dc044c7fa7a2",
    
"0f73c222-ca6d-802e-XXXX-10e755eed4c1",
    
"d9d1c68c-725e-9165-XXXX-0af56cb29962",
    
"7666b53b-b52b-cdf6-XXXX-46673716e82a",
    
"693e197d-1740-724f-XXXX-0c294d895ea3",
    
"e34395fd-2661-1907-XXXX-c60a80e86a94",
    
"d81287d4-7be5-86a5-XXXX-68b4bea821bf",
    
"3a3c4d83-b418-cb32-XXXX-1354dfbd97a3",
    
"b3f5ccc6-9404-15dd-XXXX-57f3ba2b2ffd",
    
"72a04292-6edf-3924-XXXX-a5778bfb6220",
    
"d3399219-ee8e-8bfe-XXXX-5f2c9e845821",
    
"cd7a090b-3a24-7085-XXXX-58cd95a6e139",
    
"f0a9ec09-19d0-0da0-XXXX-fa0c49a8da05"
        
];

list 
lTextures4 = [
    
"1e5b3d96-61a3-b3a2-XXXX-3c24a0bd6ba5",
    
"7baf93b1-0635-bd12-XXXX-c95da1b20439",
    
"b43728c3-7bba-91e3-XXXX-abff206af5b3",
    
"c67fbf0d-77bd-2d7d-XXXX-dc044c7fa7a2",
    
"0f73c222-ca6d-802e-XXXX-10e755eed4c1",
    
"d9d1c68c-725e-9165-XXXX-0af56cb29962",
    
"7666b53b-b52b-cdf6-XXXX-46673716e82a",
    
"693e197d-1740-724f-XXXX-0c294d895ea3",
    
"e34395fd-2661-1907-XXXX-c60a80e86a94",
    
"d81287d4-7be5-86a5-XXXX-68b4bea821bf",
    
"3a3c4d83-b418-cb32-XXXX-1354dfbd97a3",
    
"b3f5ccc6-9404-15dd-XXXX-57f3ba2b2ffd",
    
"72a04292-6edf-3924-XXXX-a5778bfb6220",
    
"d3399219-ee8e-8bfe-XXXX-5f2c9e845821",
    
"cd7a090b-3a24-7085-XXXX-58cd95a6e139",
    
"f0a9ec09-19d0-0da0-XXXX-fa0c49a8da05"
        
];

list 
lTextures5 = [
    
"1e5b3d96-61a3-b3a2-XXXX-3c24a0bd6ba5",
    
"7baf93b1-0635-bd12-XXXX-c95da1b20439",
    
"b43728c3-7bba-91e3-XXXX-abff206af5b3",
    
"c67fbf0d-77bd-2d7d-XXXX-dc044c7fa7a2",
    
"0f73c222-ca6d-802e-XXXX-10e755eed4c1",
    
"d9d1c68c-725e-9165-XXXX-0af56cb29962",
    
"7666b53b-b52b-cdf6-XXXX-46673716e82a",
    
"693e197d-1740-724f-XXXX-0c294d895ea3",
    
"e34395fd-2661-1907-XXXX-c60a80e86a94",
    
"d81287d4-7be5-86a5-XXXX-68b4bea821bf",
    
"3a3c4d83-b418-cb32-XXXX-1354dfbd97a3",
    
"b3f5ccc6-9404-15dd-XXXX-57f3ba2b2ffd",
    
"72a04292-6edf-3924-XXXX-a5778bfb6220",
    
"d3399219-ee8e-8bfe-XXXX-5f2c9e845821",
    
"cd7a090b-3a24-7085-XXXX-58cd95a6e139",
    
"f0a9ec09-19d0-0da0-XXXX-fa0c49a8da05"
        
];

list 
lTextures6 = [
    
"1e5b3d96-61a3-b3a2-XXXX-3c24a0bd6ba5",
    
"7baf93b1-0635-bd12-XXXX-c95da1b20439",
    
"b43728c3-7bba-91e3-XXXX-abff206af5b3",
    
"c67fbf0d-77bd-2d7d-XXXX-dc044c7fa7a2",
    
"0f73c222-ca6d-802e-XXXX-10e755eed4c1",
    
"d9d1c68c-725e-9165-XXXX-0af56cb29962",
    
"7666b53b-b52b-cdf6-XXXX-46673716e82a",
    
"693e197d-1740-724f-XXXX-0c294d895ea3",
    
"e34395fd-2661-1907-XXXX-c60a80e86a94",
    
"d81287d4-7be5-86a5-XXXX-68b4bea821bf",
    
"3a3c4d83-b418-cb32-XXXX-1354dfbd97a3",
    
"b3f5ccc6-9404-15dd-XXXX-57f3ba2b2ffd",
    
"72a04292-6edf-3924-XXXX-a5778bfb6220",
    
"d3399219-ee8e-8bfe-XXXX-5f2c9e845821",
    
"cd7a090b-3a24-7085-XXXX-58cd95a6e139",
    
"f0a9ec09-19d0-0da0-XXXX-fa0c49a8da05"
        
];

list 
lTextures7 = [
    
"1e5b3d96-61a3-b3a2-bb64-3c24a0bd6ba5",
    
"7baf93b1-0635-bd12-dfc1-c95da1b20439",
    
"b43728c3-7bba-91e3-46fd-abff206af5b3",
    
"c67fbf0d-77bd-2d7d-fed1-dc044c7fa7a2"
        
];        

list 
lTextures8 = [
    
"1e5b3d96-61a3-b3a2-bb64-3c24a0bd6ba5",
    
"7baf93b1-0635-bd12-dfc1-c95da1b20439",
    
"b43728c3-7bba-91e3-46fd-abff206af5b3",
    
"c67fbf0d-77bd-2d7d-fed1-dc044c7fa7a2"
        
];

// Liste des numéros des primitives
list lPrims = [6,7,8,12,9,19,14,17];

// Détermine l'index de la case touchée
integer indexZone(integer xinteger y) {
    
vector v llDetectedTouchST(0);
    return (integer)(
v.x) + ((integer)(v.y)) * x;
}

// Détermine l'index du bouton touché
integer indexBouton(integer idstring iCase) {
    list 
lBoutons;
    
// Choix de la liste concernée
    
if(id == 0lBoutons lBoutons1;
    else if(
id == 1lBoutons lBoutons2;
    else if(
id == 2lBoutons lBoutons3;
    else if(
id == 3lBoutons lBoutons4;
    else if(
id == 4lBoutons lBoutons5;
    else if(
id == 5lBoutons lBoutons6;
    else if(
id == 6lBoutons lBoutons7;
    else 
lBoutons lBoutons8;
    
// Balayage
    
integer n llGetListLength(lBoutons);
    while(
n--) {
        
string s llList2String(lBoutonsn);
        list 
llCSV2List(s);
        if(~
llListFindList(l, [iCase])) return n;
    }
    return -
1;
}

default
{
    
state_entry()
    {
        
llOwnerSay("La mémoire utilisée est : " + (string)llGetUsedMemory() + " octects");
    }

    
touch_start(integer total_number)
    {
        
llOwnerSay("Clic sur la case " + (string)indexZone(116));
        
integer iPrimitive llDetectedLinkNumber(0);
        
integer id llListFindList(lPrims, [iPrimitive]);
        if(~
id) {
            
integer iCase indexZone(116);
            
integer iBouton indexBouton(id, (string)iCase);
            if(~
iBouton) {
                list 
lTextures;
                if(
id == 0lTextures lTextures1;
                else if(
id == 1lTextures lTextures2;
                else if(
id == 2lTextures lTextures3;
                else if(
id == 3lTextures lTextures4;
                else if(
id == 4lTextures lTextures5;
                else if(
id == 5lTextures lTextures6;
                else if(
id == 6lTextures lTextures7;
                else 
lTextures lTextures8;
                
llWhisper(iCanal, (string)id "@" llList2String(lTexturesiBouton));
            }
        }
    }


Dernière modification par Gaelle Minois ; 06/08/2014 à 15h10.
Je viens de tester et ça fonctionne pour moi, j'ai changé le script pour que tu puisses renseigner les noms des primitive plutôt que leur index :

Code PHP:

// Script de commande dans le HUD

// Canal
integer iCanal 0;

// Liste des boutons
list lBoutons1 = [
    
"0",
    
"1",
    
"2",
    
"3",
    
"4",
    
"5",
    
"6",
    
"7",
    
"8",
    
"9",
    
"10",
    
"11",
    
"12",
    
"13",
    
"14",
    
"15"
        
];

list 
lBoutons2 = [
    
"0",
    
"1",
    
"2",
    
"3",
    
"4",
    
"5",
    
"6",
    
"7",
    
"8",
    
"9",
    
"10",
    
"11",
    
"12",
    
"13",
    
"14",
    
"15"
        
];

list 
lBoutons3 = [
    
"0",
    
"1",
    
"2",
    
"3",
    
"4",
    
"5",
    
"6",
    
"7",
    
"8",
    
"9",
    
"10",
    
"11",
    
"12",
    
"13",
    
"14",
    
"15"
        
];

list 
lBoutons4 = [
    
"0",
    
"1",
    
"2",
    
"3",
    
"4",
    
"5",
    
"6",
    
"7",
    
"8",
    
"9",
    
"10",
    
"11",
    
"12",
    
"13",
    
"14",
    
"15"
        
];

list 
lBoutons5 = [
    
"0",
    
"1",
    
"2",
    
"3",
    
"4",
    
"5",
    
"6",
    
"7",
    
"8",
    
"9",
    
"10",
    
"11",
    
"12",
    
"13",
    
"14",
    
"15"
        
];

list 
lBoutons6 = [
    
"0",
    
"1",
    
"2",
    
"3",
    
"4",
    
"5",
    
"6",
    
"7",
    
"8",
    
"9",
    
"10",
    
"11",
    
"12",
    
"13",
    
"14",
    
"15"
        
];

list 
lBoutons7 = [
    
"0",
    
"1",
    
"2",
    
"3"
        
];

list 
lBoutons8 = [
    
"0",
    
"1",
    
"2",
    
"3"
        
];

// Textures
list lTextures1 = [
    
"1e5b3d96-61a3-b3a2-XXXX-3c24a0bd6ba5",
    
"7baf93b1-0635-bd12-XXXX-c95da1b20439",
    
"b43728c3-7bba-91e3-XXXX-abff206af5b3",
    
"c67fbf0d-77bd-2d7d-XXXX-dc044c7fa7a2",
    
"0f73c222-ca6d-802e-XXXX-10e755eed4c1",
    
"d9d1c68c-725e-9165-XXXX-0af56cb29962",
    
"7666b53b-b52b-cdf6-XXXX-46673716e82a",
    
"693e197d-1740-724f-XXXX-0c294d895ea3",
    
"e34395fd-2661-1907-XXXX-c60a80e86a94",
    
"d81287d4-7be5-86a5-XXXX-68b4bea821bf",
    
"3a3c4d83-b418-cb32-XXXX-1354dfbd97a3",
    
"b3f5ccc6-9404-15dd-XXXX-57f3ba2b2ffd",
    
"72a04292-6edf-3924-XXXX-a5778bfb6220",
    
"d3399219-ee8e-8bfe-XXXX-5f2c9e845821",
    
"cd7a090b-3a24-7085-XXXX-58cd95a6e139",
    
"f0a9ec09-19d0-0da0-XXXX-fa0c49a8da05"
        
];

list 
lTextures2 = [
    
"1e5b3d96-61a3-b3a2-XXXX-3c24a0bd6ba5",
    
"7baf93b1-0635-bd12-XXXX-c95da1b20439",
    
"b43728c3-7bba-91e3-XXXX-abff206af5b3",
    
"c67fbf0d-77bd-2d7d-XXXX-dc044c7fa7a2",
    
"0f73c222-ca6d-802e-XXXX-10e755eed4c1",
    
"d9d1c68c-725e-9165-XXXX-0af56cb29962",
    
"7666b53b-b52b-cdf6-XXXX-46673716e82a",
    
"693e197d-1740-724f-XXXX-0c294d895ea3",
    
"e34395fd-2661-1907-XXXX-c60a80e86a94",
    
"d81287d4-7be5-86a5-XXXX-68b4bea821bf",
    
"3a3c4d83-b418-cb32-XXXX-1354dfbd97a3",
    
"b3f5ccc6-9404-15dd-XXXX-57f3ba2b2ffd",
    
"72a04292-6edf-3924-XXXX-a5778bfb6220",
    
"d3399219-ee8e-8bfe-XXXX-5f2c9e845821",
    
"cd7a090b-3a24-7085-XXXX-58cd95a6e139",
    
"f0a9ec09-19d0-0da0-XXXX-fa0c49a8da05"
        
];

list 
lTextures3 = [
    
"1e5b3d96-61a3-b3a2-XXXX-3c24a0bd6ba5",
    
"7baf93b1-0635-bd12-XXXX-c95da1b20439",
    
"b43728c3-7bba-91e3-XXXX-abff206af5b3",
    
"c67fbf0d-77bd-2d7d-XXXX-dc044c7fa7a2",
    
"0f73c222-ca6d-802e-XXXX-10e755eed4c1",
    
"d9d1c68c-725e-9165-XXXX-0af56cb29962",
    
"7666b53b-b52b-cdf6-XXXX-46673716e82a",
    
"693e197d-1740-724f-XXXX-0c294d895ea3",
    
"e34395fd-2661-1907-XXXX-c60a80e86a94",
    
"d81287d4-7be5-86a5-XXXX-68b4bea821bf",
    
"3a3c4d83-b418-cb32-XXXX-1354dfbd97a3",
    
"b3f5ccc6-9404-15dd-XXXX-57f3ba2b2ffd",
    
"72a04292-6edf-3924-XXXX-a5778bfb6220",
    
"d3399219-ee8e-8bfe-XXXX-5f2c9e845821",
    
"cd7a090b-3a24-7085-XXXX-58cd95a6e139",
    
"f0a9ec09-19d0-0da0-XXXX-fa0c49a8da05"
        
];

list 
lTextures4 = [
    
"1e5b3d96-61a3-b3a2-XXXX-3c24a0bd6ba5",
    
"7baf93b1-0635-bd12-XXXX-c95da1b20439",
    
"b43728c3-7bba-91e3-XXXX-abff206af5b3",
    
"c67fbf0d-77bd-2d7d-XXXX-dc044c7fa7a2",
    
"0f73c222-ca6d-802e-XXXX-10e755eed4c1",
    
"d9d1c68c-725e-9165-XXXX-0af56cb29962",
    
"7666b53b-b52b-cdf6-XXXX-46673716e82a",
    
"693e197d-1740-724f-XXXX-0c294d895ea3",
    
"e34395fd-2661-1907-XXXX-c60a80e86a94",
    
"d81287d4-7be5-86a5-XXXX-68b4bea821bf",
    
"3a3c4d83-b418-cb32-XXXX-1354dfbd97a3",
    
"b3f5ccc6-9404-15dd-XXXX-57f3ba2b2ffd",
    
"72a04292-6edf-3924-XXXX-a5778bfb6220",
    
"d3399219-ee8e-8bfe-XXXX-5f2c9e845821",
    
"cd7a090b-3a24-7085-XXXX-58cd95a6e139",
    
"f0a9ec09-19d0-0da0-XXXX-fa0c49a8da05"
        
];

list 
lTextures5 = [
    
"1e5b3d96-61a3-b3a2-XXXX-3c24a0bd6ba5",
    
"7baf93b1-0635-bd12-XXXX-c95da1b20439",
    
"b43728c3-7bba-91e3-XXXX-abff206af5b3",
    
"c67fbf0d-77bd-2d7d-XXXX-dc044c7fa7a2",
    
"0f73c222-ca6d-802e-XXXX-10e755eed4c1",
    
"d9d1c68c-725e-9165-XXXX-0af56cb29962",
    
"7666b53b-b52b-cdf6-XXXX-46673716e82a",
    
"693e197d-1740-724f-XXXX-0c294d895ea3",
    
"e34395fd-2661-1907-XXXX-c60a80e86a94",
    
"d81287d4-7be5-86a5-XXXX-68b4bea821bf",
    
"3a3c4d83-b418-cb32-XXXX-1354dfbd97a3",
    
"b3f5ccc6-9404-15dd-XXXX-57f3ba2b2ffd",
    
"72a04292-6edf-3924-XXXX-a5778bfb6220",
    
"d3399219-ee8e-8bfe-XXXX-5f2c9e845821",
    
"cd7a090b-3a24-7085-XXXX-58cd95a6e139",
    
"f0a9ec09-19d0-0da0-XXXX-fa0c49a8da05"
        
];

list 
lTextures6 = [
    
"1e5b3d96-61a3-b3a2-XXXX-3c24a0bd6ba5",
    
"7baf93b1-0635-bd12-XXXX-c95da1b20439",
    
"b43728c3-7bba-91e3-XXXX-abff206af5b3",
    
"c67fbf0d-77bd-2d7d-XXXX-dc044c7fa7a2",
    
"0f73c222-ca6d-802e-XXXX-10e755eed4c1",
    
"d9d1c68c-725e-9165-XXXX-0af56cb29962",
    
"7666b53b-b52b-cdf6-XXXX-46673716e82a",
    
"693e197d-1740-724f-XXXX-0c294d895ea3",
    
"e34395fd-2661-1907-XXXX-c60a80e86a94",
    
"d81287d4-7be5-86a5-XXXX-68b4bea821bf",
    
"3a3c4d83-b418-cb32-XXXX-1354dfbd97a3",
    
"b3f5ccc6-9404-15dd-XXXX-57f3ba2b2ffd",
    
"72a04292-6edf-3924-XXXX-a5778bfb6220",
    
"d3399219-ee8e-8bfe-XXXX-5f2c9e845821",
    
"cd7a090b-3a24-7085-XXXX-58cd95a6e139",
    
"f0a9ec09-19d0-0da0-XXXX-fa0c49a8da05"
        
];

list 
lTextures7 = [
    
"1e5b3d96-61a3-b3a2-bb64-3c24a0bd6ba5",
    
"7baf93b1-0635-bd12-dfc1-c95da1b20439",
    
"b43728c3-7bba-91e3-46fd-abff206af5b3",
    
"c67fbf0d-77bd-2d7d-fed1-dc044c7fa7a2"
        
];

list 
lTextures8 = [
    
"1e5b3d96-61a3-b3a2-bb64-3c24a0bd6ba5",
    
"7baf93b1-0635-bd12-dfc1-c95da1b20439",
    
"b43728c3-7bba-91e3-46fd-abff206af5b3",
    
"c67fbf0d-77bd-2d7d-fed1-dc044c7fa7a2"
        
];

// Liste des numéros des primitives
// (autant de 0 que de primitives pour les panneaux)
list lPrims = [0,0,0,0,0,0,0,0];

// Noms des primitives des panneaux (noms quelconques distincts)
list lPrims_noms = ["0","1","2","3","4","5","6","7"];

// Détermine l'index de la case touchée
integer indexZone(integer xinteger y) {
    
vector v llDetectedTouchST(0);
    return (integer)(
v.x) + ((integer)(v.y)) * x;
}

// Détermine l'index du bouton touché
integer indexBouton(integer idstring iCase) {
    list 
lBoutons;
    
// Choix de la liste concernée
    
if(id == 0lBoutons lBoutons1;
    else if(
id == 1lBoutons lBoutons2;
    else if(
id == 2lBoutons lBoutons3;
    else if(
id == 3lBoutons lBoutons4;
    else if(
id == 4lBoutons lBoutons5;
    else if(
id == 5lBoutons lBoutons6;
    else if(
id == 6lBoutons lBoutons7;
    else 
lBoutons lBoutons8;
    
// Balayage
    
integer n llGetListLength(lBoutons);
    while(
n--) {
        
string s llList2String(lBoutonsn);
        list 
llCSV2List(s);
        if(~
llListFindList(l, [iCase])) return n;
    }
    return -
1;
}

// Détecte les primitives nommées dans lPrims_noms
// et récupère leur index pour renseigner lPrims
detecte_prims(){
    
integer n llGetNumberOfPrims();
    
integer i;
    for(
2<= n; ++i) {
        
string nom llGetLinkName(i);
        
integer id llListFindList(lPrims_noms, [nom]);
        if(~
idlPrims llListReplaceList(lPrims, [i], idid);
    }
}

default
{
    
state_entry()
    {
        
llOwnerSay("La mémoire utilisée est : " + (string)llGetUsedMemory() + " octects");
        
detecte_prims();
    }

    
changed(integer change)
    {
        if(
change CHANGED_LINKdetecte_prims();
    }

    
touch_start(integer total_number)
    {
        
//llOwnerSay("Clic sur la case " + (string)indexZone(1, 16));
        
integer iPrimitive llDetectedLinkNumber(0);
        
integer id llListFindList(lPrims, [iPrimitive]);
        
//llOwnerSay("Clic sur le panneau d'index " + (string)id);
        
if(~id) {
            
integer iCase indexZone(116);
            
integer iBouton indexBouton(id, (string)iCase);
            if(~
iBouton) {
                list 
lTextures;
                if(
id == 0lTextures lTextures1;
                else if(
id == 1lTextures lTextures2;
                else if(
id == 2lTextures lTextures3;
                else if(
id == 3lTextures lTextures4;
                else if(
id == 4lTextures lTextures5;
                else if(
id == 5lTextures lTextures6;
                else if(
id == 6lTextures lTextures7;
                else 
lTextures lTextures8;
                
llWhisper(iCanal, (string)id "@" llList2String(lTexturesiBouton));
            }
        }
    }

J'ai mis le canal 0 pour simplifier les tests.
Répondre

Connectés sur ce fil

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