Problème pour dupliquer le code

Résolu
Signaler
Messages postés
26
Date d'inscription
lundi 5 juillet 2004
Statut
Membre
Dernière intervention
19 août 2011
-
Messages postés
26
Date d'inscription
lundi 5 juillet 2004
Statut
Membre
Dernière intervention
19 août 2011
-
Bonjour,
J'ai récuperer il y as quelques jours le code ci dessous, mon souci est que je n'arrive pas à y integrer d'autres balles, pour pouvoir varier les couleurs, intensité etc.
Quand je duplique les variables cela ne marche pas et si j'applique le code sur un autre clip de la même scène, le premier s'arrète lorsque le second commence.
Je ne m'y retrouve pas dans tous ces code, et j'ai du mal à comprendre leurs fonctions
Pouvez vous m'aidez?
Merci

dessus.swapDepths(500);

for(i=0;i<10;i++){

duplicateMovieClip(balle,"balle"+i,100+i);

this["balle"+i].force_D=random(6)+2+(i/10);

this["balle"+i].force_B=random(6)+2+(i/10);

this["balle"+i].acc=0.2;

this["balle"+i]._x=200+i*5;

this["balle"+i]._y=200+i*5;

this["balle"+i]._alpha=i*10+10;

}

onEnterFrame = function(){

          for(i=0;i<10;i++){

                  

                    this["balle"+i]._x+=this["balle"+i].force_D;

                    this["balle"+i]._y+=this["balle"+i].force_B;

                  

                    if(this["balle"+i]._y>400){

                             this["balle"+i].force_B=-this["balle"+i].force_B;

                   }

                    if(this["balle"+i]._y<0){

                             this["balle"+i].force_B=-this["balle"+i].force_B;

                   }

                    if(this["balle"+i]._x<0){

                             this["balle"+i].force_D=-this["balle"+i].force_D;

                   }

                    if(this["balle"+i]._x>700){

                             this["balle"+i].force_D=-this["balle"+i].force_D;

                   }

          }

}

10 réponses

Messages postés
1378
Date d'inscription
samedi 9 octobre 2004
Statut
Membre
Dernière intervention
1 novembre 2010
1
Pardons :
//dans le clip "balle" il y a 5 images clé pour les différentes couleurs
var nombreDeCouleurDifferente :Number = 5;
for(i=0;i<nombreDeBalle ;i++){

duplicateMovieClip(balle,"balle"+i,100+i);

this["balle"+i].gotoAndStop( random(nombreDeCouleurDifferente)+ 1);

this["balle"+i].force_D=random(6)+2+(i/10);

this["balle"+i].force_B=random(6)+2+(i/10);

this["balle"+i].acc=0.2;

this["balle"+i]._x=200+i*5;

this["balle"+i]._y=200+i*5;

this["balle"+i]._alpha=i*10+10;

}
bali_balo....=]
Messages postés
1378
Date d'inscription
samedi 9 octobre 2004
Statut
Membre
Dernière intervention
1 novembre 2010
1
Le nombre d'objet dupliqué est en "dur" dans les boucles FOR : for(i=0;i<10;i++)
Donc en fait toute les fois où tu as 10, tu la remplaces par une variable comme cela il te sera facile de les paramétrer.

var nombreDeBalle :Number = 15;
dessus.swapDepths(500);

for(i=0;i<nombreDeBalle ;i++){

duplicateMovieClip(balle,"balle"+i,100+i);

this["balle"+i].force_D=random(6)+2+(i/10);

this["balle"+i].force_B=random(6)+2+(i/10);

this["balle"+i].acc=0.2;

this["balle"+i]._x=200+i*5;

this["balle"+i]._y=200+i*5;

this["balle"+i]._alpha=i*10+10;

}

onEnterFrame = function(){

          for(i=0;i<nombreDeBalle ;i++){

                  

                    this["balle"+i]._x+=this["balle"+i].force_D;

                    this["balle"+i]._y+=this["balle"+i].force_B;

                  

                    if(this["balle"+i]._y>400){

                             this["balle"+i].force_B=-this["balle"+i].force_B;

                   }

                    if(this["balle"+i]._y<0){

                             this["balle"+i].force_B=-this["balle"+i].force_B;

                   }

                    if(this["balle"+i]._x<0){

                             this["balle"+i].force_D=-this["balle"+i].force_D;

                   }

                    if(this["balle"+i]._x>700){

                             this["balle"+i].force_D=-this["balle"+i].force_D;

                   }

          }

}

Personnellement je n'aime pas le this["balle"+i]
Je préfère stocker toute les balles dans un tableau.

bali_balo....=]
Messages postés
1378
Date d'inscription
samedi 9 octobre 2004
Statut
Membre
Dernière intervention
1 novembre 2010
1
Ne te lances pas dans ce genre de code si tu n'ai même pas développeur.
Même un développeur en BASIC ou ASSEMBLEUR aurait vu cela...

bali_balo....=]
Messages postés
26
Date d'inscription
lundi 5 juillet 2004
Statut
Membre
Dernière intervention
19 août 2011

en faite c'est pour le boulot, je suis graphiste et on me demande de faire un menu en flash.
le menu est fais de balles et ils souhaite que des balles de diff couleurs rebondissent en arriere plan,
comme je ne sais pas faire je cherche des solutions mais ce n'est pas facile...
Messages postés
26
Date d'inscription
lundi 5 juillet 2004
Statut
Membre
Dernière intervention
19 août 2011

(je suis graphiste print donc flash je n'ai que quelques bases)
Messages postés
1378
Date d'inscription
samedi 9 octobre 2004
Statut
Membre
Dernière intervention
1 novembre 2010
1
Autant pour moi
J'ai toujours l'impression que ces messages sont postés par des mecs qui débarquent dans le monde du Flash.
Précisez les gars que vous êtes graphistes...

Sinon est-ce que ma solution peux t'aider

bali_balo....=]
Messages postés
26
Date d'inscription
lundi 5 juillet 2004
Statut
Membre
Dernière intervention
19 août 2011

moi je suis une fille!!!.
Bah en faite cette "variable" duplique la meme balle moi je souhaiterai par exemple faire rebondir 4 balles bleu et des rouges et des jaunes etc
mais c'est quand meme gentil de me repondre
Messages postés
26
Date d'inscription
lundi 5 juillet 2004
Statut
Membre
Dernière intervention
19 août 2011

....
Messages postés
1378
Date d'inscription
samedi 9 octobre 2004
Statut
Membre
Dernière intervention
1 novembre 2010
1
Tu as plusieurs choix.
Moi ce que je fais généralement c'est que dans ton clip "balle", je crée plusieurs images clés de la balle que je transforme en rouge, bleu , jaune , etc.
Ensuite dans ton code tu peux faire par exemple :

//dans le clip "balle" il y a 5 images clé pour les différentes couleurs
var nombreDeCouleurDifferente :Number = 5;
for(i=0;i<nombreDeBalle ;i++){

duplicateMovieClip(balle,"balle"+i,100+i);

this["balle"+i].gotoAndStop( random(nombreDeCouleurDifferente) );

this["balle"+i].force_D =random(6)+2+(i/10);

this["balle"+i].force_B=random(6)+2+(i/10);

this["balle"+i].acc=0.2;

this["balle"+i]._x=200+i*5;

this["balle"+i]._y=200+i*5;

this["balle"+i]._alpha=i*10+10;

}

Sinon tu peux faire cela via du code en utilisant la classe Color, mais ce n'est pas à ta porté je crois ^^

bali_balo....=]
Messages postés
26
Date d'inscription
lundi 5 juillet 2004
Statut
Membre
Dernière intervention
19 août 2011

ok merci beaucoup