Nommer des Variables avec For...{ }

Signaler
Messages postés
41
Date d'inscription
jeudi 21 août 2003
Statut
Membre
Dernière intervention
25 avril 2004
-
Messages postés
352
Date d'inscription
vendredi 4 octobre 2002
Statut
Membre
Dernière intervention
18 juin 2004
-
Morbleu, c top...:
...Mon royaume pour du café.../ (... et du chocolat, nom d une Ram)

Comment faut-ol faire pour faire un DuplicateMC avec l aide d une boucle puis rennomer une variable qui se nommerait NomMC+Loop contennant une donnée quelconque si je sais que

for (loop=1; loop<10; loop++) {
duplicateMovieClip(p1,loop, loop);
setProperty(loop, _y, 50*loop);
}

sauf que je dois retrouver le nom Loop et il est le meme, zarby

J avais penser a MC+loop, mais ca ne va pas, Y a t il un autre moyen que des Arrays?

5 réponses

Messages postés
715
Date d'inscription
samedi 29 mars 2003
Statut
Membre
Dernière intervention
10 septembre 2009

Pourquoi tu veux pas de Arrays, c'est la façon la plus simple de gêrer des indices en duplicate et avec une boucle For en plus. Déclare un NomMC = new Array();
Fait un duplicateMovieClip(p1,NomMC[loop],loop);
et tes duplicates se nommerant NomMC[1], NomMC[2], NomMC[3].... NomMC[10]

A+
aFaD
Messages postés
41
Date d'inscription
jeudi 21 août 2003
Statut
Membre
Dernière intervention
25 avril 2004

Benh, je le demande, pour savoir comment faire, mon probleme est assez compliqué.
Messages postés
715
Date d'inscription
samedi 29 mars 2003
Statut
Membre
Dernière intervention
10 septembre 2009

Eh donc??? C'était la réponse que tu attendais !

Exprime les choses de manière clair et nos réponses le seront.
A+
aFaD
Messages postés
41
Date d'inscription
jeudi 21 août 2003
Statut
Membre
Dernière intervention
25 avril 2004

Renommer la variable en dupliquant un texte
Messages postés
352
Date d'inscription
vendredi 4 octobre 2002
Statut
Membre
Dernière intervention
18 juin 2004

Voici le code de ton exemple :

for (loop=1; loop<10; loop++) {
duplicateMovieClip(p1,loop, loop);
setProperty(loop, _y, 50*loop);
}


à savoir que dans ce cas, loop a une valeur numérique égale à 1 et que tant qu'en s'incrémentant de 1 en 1 elle sera inférieur à 10, elle se dupliquera et adopteras les modifs apportée par ton setProperty.
Mais si ton clip se nomme "p", ou "p1", voici la façon dont tu devrais écrire ta boucle :

for (loop=1; loop<10; loop++) {
duplicateMovieClip(p,"p"+loop, loop);
setProperty("p"+loop, _y, 50*loop);
}


Ainsi, les clip p1, p2 [...] p9, p10 seront créés et se positionnerons en _y à 50, 100 [...] 450, 500...
Voilà :)

Je sais pas si ça répond exactement à ta question, mais ta boucle fonctionnera comme ça.

PS : Remplace "loop" par un nom de variable plus court, "i" "j" ou "k" etc.. sont plus conventionnels.