Click sur des boutons créés dynamiquement [Résolu]

Signaler
Messages postés
8
Date d'inscription
vendredi 4 février 2005
Statut
Membre
Dernière intervention
29 mars 2005
-
Messages postés
8
Date d'inscription
vendredi 4 février 2005
Statut
Membre
Dernière intervention
29 mars 2005
-
Bonjour, bonjour!!
Un petit probleme de flash: Je voudrais créer une grille de 25*25 cases. Si l'utilisateur clique sur une case, ca affiche le numero de la case sur une autre image:

for (carreau_y=1;carreau_y<=25;carreau_y++){
for(carreau_x=1;carreau_x<=25;carreau_x++){
a++
attachMovie("carreau", "carreau" , a);
carreau._x=(carreau_x*20);
carreau._y=(carreau_y*20);
//c'est la que commence le probleme...
carreau.onRelease=function(){
trans= carreau.getDepth();//la variable trans est affichée dans l'image n°3
gotoAndPlay(3);
}
carreau._name = "carreau"+a;
nom="carreau"+a;

Mais malheuresement, quel que soit la case sur laquelle je clique, il me retourne "undefined"..
A l'aide!!!

8 réponses

Messages postés
6146
Date d'inscription
dimanche 21 décembre 2003
Statut
Modérateur
Dernière intervention
4 septembre 2013
9
il est normal, car tu crées 25x25 clips dont le nom est "carreau" !

Tu dois simplement virer tes 2 dernières lignes qui ne servent à rien du tout et remplacer la ligne 4 par :

attachMovie ("carreau", "carreau"+a, a);

Ensuite, tu remplaces tous tes appels de clip "carreau" par :

this["carreau"+a"]

Et le tour est joué !

Peg'

PS: tu aurais regardé ma source tuto sur la création d'un RPG bassé sur un quadrillage, tu aurais vu tout ça !
Messages postés
6146
Date d'inscription
dimanche 21 décembre 2003
Statut
Modérateur
Dernière intervention
4 septembre 2013
9
si : tu dois transmettre leurs valeurs dans le clip lors de leurs créations. il te restera juste à en ressortir les coordonnées quand tu en as besoin.

Peg'
Messages postés
6146
Date d'inscription
dimanche 21 décembre 2003
Statut
Modérateur
Dernière intervention
4 septembre 2013
9
ben dans ta boucle, il faut faire un truc du genre :
this["carreau"+a].nomDeVariable = Valeur de la variable;

Tu me suis ?

Peg'

Ps : avant de vouloir faire un RPG en flash (c'est un exemple), n'oublie pas d'apprendre les bases !
Messages postés
8
Date d'inscription
vendredi 4 février 2005
Statut
Membre
Dernière intervention
29 mars 2005

Merci beaucoup, mon probleme est (en partie )résolu!!
Plus de probleme pour tout ça...
Mais je souhaiterais que lorsque on clique sur une case, ça transmette ses coordonnées x et y à limage d'arrivée:

this["carreau"+a].onRelease=function(){
transy=carreau_y;
transx=carreau_x;
gotoAndPlay(3);
}

Mais évidemment (c'est logique...) transx et transy valent chacun 26... Tu sais pas comment je pourrais faire?
Messages postés
8
Date d'inscription
vendredi 4 février 2005
Statut
Membre
Dernière intervention
29 mars 2005

Hello...
tu va me prendre pour un con, mais j'ai beau chercher, je ne trouve pas le moyen de transmettre des variables dans un clip (il me met "undefined"), et je n'arrive pas non plus à les récupérer...
Messages postés
8
Date d'inscription
vendredi 4 février 2005
Statut
Membre
Dernière intervention
29 mars 2005

Merci beaucoup, je pensais les avoir, les bases, mais je me rend compte que non ...
Bon, devine quoi?? J'ai encore un probleme!!
la ça me depasse...

a=0;
for (carreau_y=1;carreau_y<=25;carreau_y++){
for(carreau_x=1;carreau_x<=25;carreau_x++){
a++
attachMovie ("carreau", "carreau"+a, a);
this["carreau"+a].valeurx=carreau_x;
this["carreau"+a].valeury=carreau_y;
this["carreau"+a].numero=a;
this["carreau"+a]._x=(carreau_x*20);
this["carreau"+a]._y=(carreau_y*20);
interm=this["carreau"+a].trouduc //la je ne sais pas pourquoi, mais si je ne passe pas par cette variable, ca ne marche pas... enfin bon c'est pas grave..
this["carreau"+a].onRelease=function(){
trans=interm;
gotoAndPlay(3);
}
}
}

Et dans l'image trois, je recupere this["carreau"+trans].valeury=carreau_y et this["carreau"+trans].valeury=carreau_y.
Et la, il me sort 25 et 25!!Comme si trans vallait 25²!
Et le pire: Si je remplace this["carreau"+a].numero=a;
par: this["carreau"+a].numero=carreau_x*carreau_y ca me fait la meme chose!
C'est bizarre...
Messages postés
8
Date d'inscription
vendredi 4 février 2005
Statut
Membre
Dernière intervention
29 mars 2005

Up....
Messages postés
8
Date d'inscription
vendredi 4 février 2005
Statut
Membre
Dernière intervention
29 mars 2005

Personne pour m'aider??