Problème avec un algorithme

Résolu
cs_sappy Messages postés 8 Date d'inscription lundi 9 février 2004 Statut Membre Dernière intervention 12 novembre 2005 - 12 nov. 2005 à 15:29
pegase31 Messages postés 6138 Date d'inscription dimanche 21 décembre 2003 Statut Modérateur Dernière intervention 4 septembre 2013 - 12 nov. 2005 à 17:34
Bonjour,

Je suis sous flash mx 6.0 et j'ai un petit soucis avec mon algorithme ci-dessous :



<hr size="2" width="100%">var i=0;

var j=0;

var prof=1;

var carre_x=300;

var carre_y=10;

tab_carre = new Array();

for(i=0;i<18;i++)

{

for(j=0;j<12;j++)

{

duplicateMovieClip("selecteur_mc","carre"+i+"_"+j,prof);

tab_carre[i,j]=eval("carre"+i+"_"+j);

tab_carre[i,j]._x=carre_x;

tab_carre[i,j]._y=carre_y;

carre_x+=10;

++prof;

}

carre_x=300;

carre_y+=10;

}

<hr size="2" width="100%">Le problème est que j'ai l'impression
d'atteindre le même objet avec tab_carre[0,j] ou tab_carre[1,j] alors
que tab_carre[0,0] et tab_carre[0,1] sont distincts.



Ai-je fait une erreur dans mon algorithme?

6 réponses

pegase31 Messages postés 6138 Date d'inscription dimanche 21 décembre 2003 Statut Modérateur Dernière intervention 4 septembre 2013 12
12 nov. 2005 à 15:58
Te refais ton code, c'est plus simple que de tout t'expliquer :

var prof=1;
var carre_x=300;
var carre_y=10;
for(i=0;i<18;i++) {
for(j=0;j<12;j++) {
var temp = duplicateMovieClip("selecteur_mc","carre"+i+"_"+j,prof);
temp._x=carre_x+(10*(j-1));
temp._y=carre_y+(10*(i-1));
prof++;
}
}

Voilà ...
Si c'est bien pour créer une grille de clips de 12x18 et espacés de 10 pixels chaques...

Peg'
3
pegase31 Messages postés 6138 Date d'inscription dimanche 21 décembre 2003 Statut Modérateur Dernière intervention 4 septembre 2013 12
12 nov. 2005 à 16:20
ton tableau ne te sers à rien, car il te suffit d'avoir les coordonnées de la case du tableau pour pouvoir appeller le clip correspondant.

Et pour que ça fonctionne, il faut remplacer par :
var temp = selecteur_mc.duplicateMovieClip("carre"+i+"_"+j,prof);

Peg'
3
cs_sappy Messages postés 8 Date d'inscription lundi 9 février 2004 Statut Membre Dernière intervention 12 novembre 2005
12 nov. 2005 à 16:06
C'est bien ce que je veux faire! Cependant le code que tu m'as proposé ne marche pas : un seul clip est visible (les autres doivent certainement se superposer). De plus, j'ai besoin de garder mon tableau tab_carre pour effectuer des modifications plus loin.
0
cs_sappy Messages postés 8 Date d'inscription lundi 9 février 2004 Statut Membre Dernière intervention 12 novembre 2005
12 nov. 2005 à 17:28
Merci bien! Cependant si je veux effectuer une modification de plusieurs de ces clips via une boucle (for par exemple), comment dois-je procéder? Ou faut-il que je passe via un tableau?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_sappy Messages postés 8 Date d'inscription lundi 9 février 2004 Statut Membre Dernière intervention 12 novembre 2005
12 nov. 2005 à 17:33
question précédente posée trop tôt! (utiliser la fonction eval)
0
pegase31 Messages postés 6138 Date d'inscription dimanche 21 décembre 2003 Statut Modérateur Dernière intervention 4 septembre 2013 12
12 nov. 2005 à 17:34
ben tu dois de toutes façons appeller les cases de ton tableau pour savoir ce qu'elles contiennent ... or c'est tout aussi simple de modifier le contenu de tes clips. Après il est tout aussi possible de faire les modifications dans ton tableau et de réactualiser tes clips dans la mêem boucle que lors de ta création.

Peg'
0
Rejoignez-nous