Tween - probleme et optimisation - Flash/ActionScript - Programmation
MarshPosté 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.*;
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 (forcément, réalisé par moi ^^)
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:
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 (forcément, réalisé par moi ^^)
Merci d'avance pour votre aide.