Tween - probleme et optimisation

Tween - probleme et optimisation - Flash/ActionScript - Programmation

Marsh Posté le 30-01-2007 à 15:38:47    

bonjour à tous,
 
je suis en formation infographiste multimédia, j'arrive enfin au bout, mais il me reste à 'maitriser' (enfin à bien se débrouiller déjà) en actionscript.
J'essaie depuis hier de manipuler la méthode Tween seulement je rencontre qq soucis.
 
Projet: diaporama photo
 
j'essaie actuellement de réaliser un diaporama photo pour un site web.
J'ai actuellement 17 photos que je mettrai en haut de la scene, les unes à côté des autres. Quand je click sur une photo, je souhaite la faire agrandir au centre de ma scene(_x, _y, _xscale, _yscale) mais une fois centrée, si je click de nouveau dessus, je souhaite quelle revienne à son état initiale.
 
J'ai testé avec 2 photos, celà fonctionne très bien cependant si j'ajoute une troisieme photo sur ma scene celà ne fonctionne plus correctement.
 
Je tient à préciser que je suis développeur débutant, je ne maitrise que HTML/CSS et j'ai qq notions en VB/VBA, Javascript ce qui veut dire que mes codes  NE SONT PAS du tout optimisés!
 
voici à présent ce que j'ai essayé de faire avec la tween et mes 3 images:
 

Citation :

import mx.transitions.Tween; // on importe la classe Tween  
import mx.transitions.easing.*;
 
jpg1_mc.onPress = function() {
 if (!ouverturePlan) {
  jpg1_mc.enabled = false;
  ouverturePlan = new Tween(jpg1_mc, "_x", Strong.easeOut, 7, 200, 1, true);
  ouverturePlan2 = new Tween(jpg1_mc, "_y", Strong.easeOut, 7, 70, 1, true);
  ouverturePlan3 = new Tween(jpg1_mc, "_xscale", Strong.easeOut, 20, 100, 1, true);
  ouverturePlan4 = new Tween(jpg1_mc, "_yscale", Strong.easeOut, 20, 100, 1, true);
  ouverturePlan.onMotionStarted = function() {
  jpg1_mc.enabled = false;
  };
  ouverturePlan.onMotionStopped = function() {
  jpg1_mc.enabled = true;
  };
  if (ouverturePlan5) {
   ouverturePlan5.yoyo();
   ouverturePlan6.yoyo();
   ouverturePlan7.yoyo();
   ouverturePlan8.yoyo();
   delete ouverturePlan5;
 
  } else {
   ouverturePlan9.yoyo();
   ouverturePlan10.yoyo();
   ouverturePlan11.yoyo();
   ouverturePlan12.yoyo();
   delete ouverturePlan9;
  };
 } else {
  ouverturePlan.yoyo();
  ouverturePlan2.yoyo();
  ouverturePlan3.yoyo();
  ouverturePlan4.yoyo();
 };
};
 
jpg2_mc.onPress = function() {
 if (!ouverturePlan5) {
  jpg2_mc.enabled = false;
  ouverturePlan5 = new Tween(jpg2_mc, "_x", Strong.easeOut, 56, 200, 1, true);
  ouverturePlan6 = new Tween(jpg2_mc, "_y", Strong.easeOut, 7, 70, 1, true);
  ouverturePlan7 = new Tween(jpg2_mc, "_xscale", Strong.easeOut, 20, 100, 1, true);
  ouverturePlan8 = new Tween(jpg2_mc, "_yscale", Strong.easeOut, 20, 100, 1, true);
  ouverturePlan5.onMotionStarted = function() {
  jpg2_mc.enabled = false;
  };
  ouverturePlan5.onMotionStopped = function() {
  jpg2_mc.enabled = true;
  };
  if (ouverturePlan) {
   ouverturePlan.yoyo();
   ouverturePlan2.yoyo();
   ouverturePlan3.yoyo();
   ouverturePlan4.yoyo();
   delete ouverturePlan;
  } else {
   ouverturePlan9.yoyo();
   ouverturePlan10.yoyo();
   ouverturePlan11.yoyo();
   ouverturePlan12.yoyo();
   delete ouverturePlan9;  
  };
 } else {
  ouverturePlan5.yoyo();
  ouverturePlan6.yoyo();
  ouverturePlan7.yoyo();
  ouverturePlan8.yoyo();  
 };
};
 
jpg3_mc.onPress = function() {
 if (!ouverturePlan9) {
  jpg3_mc.enabled = false;
  ouverturePlan9 = new Tween(jpg3_mc, "_x", Strong.easeOut, 96, 200, 1, true);
  ouverturePlan10 = new Tween(jpg3_mc, "_y", Strong.easeOut, 7, 70, 1, true);
  ouverturePlan11 = new Tween(jpg3_mc, "_xscale", Strong.easeOut, 20, 100, 1, true);
  ouverturePlan12 = new Tween(jpg3_mc, "_yscale", Strong.easeOut, 20, 100, 1, true);
  ouverturePlan9.onMotionStarted = function() {
  jpg3_mc.enabled = false;
  };
  ouverturePlan9.onMotionStopped = function() {
  jpg3_mc.enabled = true;
  };
  if (ouverturePlan) {
   ouverturePlan.yoyo();
   ouverturePlan2.yoyo();
   ouverturePlan3.yoyo();
   ouverturePlan4.yoyo();
   delete ouverturePlan;
  } else {
   ouverturePlan5.yoyo();
   ouverturePlan6.yoyo();
   ouverturePlan7.yoyo();
   ouverturePlan8.yoyo();
   delete ouverturePlan5;
  };
 } else {
  ouverturePlan9.yoyo();
  ouverturePlan10.yoyo();
  ouverturePlan11.yoyo();
  ouverturePlan12.yoyo();
  }
};


 
 
J'aurai souhaite de l'aide pour réaliser ma galerie avec des Tween et qu'on me donne qq conseils pour optimiser ce code foireux :p (forcément, réalisé par moi ^^)
 
Merci d'avance pour votre aide.

Reply

Marsh Posté le 30-01-2007 à 15:38:47   

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed