for(i=2; i<max+1; i++){ duplicateMovieClip(eval("to"+(i-1)), "to"+i, h++); eval("to"+i).name = i; eval("to"+i).onRollOver = function(){ bt("nom_du_clip"+this.name);//Donc this.name me retournera la valeur 1,2,3..etc selon le clip que j'active !! }
import mx.transitions.Tween; import mx.transitions.easing.*; //Différentes variable qui serviront au paramètre du script ok=1; var n1:Number= new Number(); n=1; dtween = 15; ltween = 8; i=1; h=6; hh = 1000; animytween = 8; espace = 300; max = 3; pl._height = max*espace; prop = Strong.easeOut; prop2 = Strong.easeIn; proparticle = Strong.easeIn duration = 3; duration2 = 3; //////////////////////////////////////Assignation Var _y//////////////////// //Position Clip de base: basepar1y = par1._y; baseparne1y = parne1._y; baseentete1y = entete1._y; basearticle1y = article1._y; //////////////////////////////////////Fin/////////////////////////////////// //Fonction tween pour le RollOver: btpar = function(nom, base, mult){ trace(mult); trace(nom); if(mult == 1){ arri = espace*mult*0+base+animytween; var tn:Tween = new Tween(eval(nom), "_y", proparticle, eval(nom)._y, arri, dtween, false); }else{ mult--; arri = espace*mult+base+animytween; var tn:Tween = new Tween(eval(nom), "_y", proparticle, eval(nom)._y, arri, dtween, false); } }; //Fonction tween pour le RollOut: btrpar = function(nom, base, mult){ trace(nom); trace(mult); if(mult == 1){ arri = espace*mult*0+base; var tn:Tween = new Tween(eval(nom), "_y", proparticle, eval(nom)._y, arri, dtween, false); }else{ mult--; arri = espace*mult+base; var tn:Tween = new Tween(eval(nom), "_y", proparticle, eval(nom)._y, arri, dtween, false); } }; //Fonction qui duplique les partie qui compose mon article: bb = function(){ duplicateMovieClip(eval("par"+(i-1)),"par"+i,h++); duplicateMovieClip(eval("parne"+(i-1)),"parne"+i,h++); duplicateMovieClip(eval("entete"+(i-1)),"entete"+i,h++); duplicateMovieClip(eval("article"+(i-1)),"article"+i,h++); duplicateMovieClip(eval("sur"+(i-1)),"sur"+i,h++); eval("par"+i)._y += espace; eval("parne"+i)._y += espace; eval("entete"+i)._y += espace; eval("article"+i)._y += espace; eval("sur"+i)._y += espace; eval("par"+i)._alpha = 0; eval("parne"+i)._alpha = 0; eval("entete"+i)._alpha = 0; eval("article"+i)._alpha = 0; eval("article"+i).text = i; bt(); } //Fonction qui me permettra de faire liaison avec php plus tard, qui affiche article avec une animation(courte certe ^^ mais sera modifier par la suite) et qui me permet de relancer mes fonction: bt = function(){ var tn1:Tween = new Tween(eval("par"+i), "_alpha", prop, 0, 100, duration, false); var tn1:Tween = new Tween(eval("parne"+i), "_alpha", prop, 0, 100, duration, false); var tn1:Tween = new Tween(eval("entete"+i), "_alpha", prop, 0, 100, duration, false); var tn1:Tween = new Tween(eval("article"+i), "_alpha", prop2, 0, 100, duration2, false); tn1.onMotionStopped = function(){ if(i != max+1){ i++ btn(); } } } //Tout passe par cette fonction car comme les clip sont déjà créé il ne faut pas les dupliquer au début ça permet de pouvoir les placer où on veut sur la scène les autres ce calerons par rapport au premier par rapport a la variable espace qui défini l'écart entre chaque article ensuite on passe a bb(); pour dupliquer btn = function(){ if(i==1){ eval("article"+i).text = i; eval("par"+i)._alpha = 0; eval("parne"+i)._alpha = 0; eval("entete"+i)._alpha = 0; eval("article"+i)._alpha = 0; bt(); }else if(i != max+1){ bb(); }else{ //C'est donc ici que se pose mon souci le reste fonctionne très bien. Je place mon for ici car j'attend d'abord que tous mes clips soient créé sinon ben ça marche pas ^^: for(n=1; n<max+1; n++){ n1[n]=n; eval("sur"+n1[n]).onRollOver = function(){ btpar("par"+n1[n], basepar1y, n1[n]); btpar("parne"+n1[n], baseparne1y, n1[n]); btpar("entete"+n1[n], baseentete1y, n1[n]); btpar("article"+n1[n], basearticle1y, n1[n]); } eval("sur"+n1[n]).onRollOut = function(){ btrpar("par"+n1[n], basepar1y, n1[n]); btrpar("parne"+n1[n], baseparne1y, n1[n]); btrpar("entete"+n1[n], baseentete1y, n1[n]); btrpar("article"+n1[n], basearticle1y, n1[n]); } } } } btn(); //Voila si il y a des questions sur le script a me poser si on peut l'améliorer je suis la (je ne veux pas mettre de timer j'aime bien mes algos en tween :P)
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionprop = Strong.easeOut; prop2 = Strong.easeIn; proparticle = Strong.easeIn
var tn:Tween = new Tween(eval(nom), "_y", proparticle, eval(nom)._y, arri, dtween, false);
import mx.transitions.Tween; import mx.transitions.easing.*; espace = 10;//écart entre chaque clip max = 20; //nombre de clip h=0; anim = 6; basew = to1._width; baseh = to1._height; basex = to1._x; sur1._x = to1._x; sur1._y = to1._y; plus = espace; yy = 0; bt = function(nom, u){ baset = eval("sur"+u)._y; var tn:Tween = new Tween(eval(nom), "_y", Elastic.easeOut, eval(nom)._y, baset+anim, 30, false); }; btf = function(nom, u){ baset = eval("sur"+u)._y; var tn:Tween = new Tween(eval(nom), "_y", Elastic.easeOut, eval(nom)._y, baset, 30, false); }; for(i=2; i<max+1; i++){ trace(i); duplicateMovieClip(eval("to"+(i-1)), "to"+i, h++); duplicateMovieClip(eval("sur"+(i-1)), "sur"+i, h++); eval("sur"+i).name = i; plus += basew+espace; if(plus > Stage.width-(basew+espace)){ plus = espace; yy++; eval("to"+i)._y = (baseh+espace)*yy+10; eval("to"+i)._x = basex; }else{ trace(plus); eval("to"+i)._x = plus; } eval("sur"+i)._x = eval("to"+i)._x; eval("sur"+i)._y = eval("to"+i)._y; eval("sur"+i).onRollOver = function(){ bt("to"+this.name,this.name); } eval("sur"+i).onRollOut = function(){ btf("to"+this.name,this.name); } } sur1.onRollOver = function(){ bt("to"+1,1); } sur1.onRollOut = function(){ btf("to"+1,1); }