Incrément sur fonction Tween

Résolu
PEHA Messages postés 81 Date d'inscription mardi 10 août 2004 Statut Membre Dernière intervention 15 décembre 2009 - 20 avril 2009 à 18:12
PEHA Messages postés 81 Date d'inscription mardi 10 août 2004 Statut Membre Dernière intervention 15 décembre 2009 - 20 avril 2009 à 18:22
Bonjour à tous, et c'est avec un plaisir non dissimulé que je me retourne vers vous après une longue et laborieuse marche dans les méandres des codes... Mes recherches sont un peu pointues, donc difficile de trouver réponse à ma question :
J'utilise ceci en code sur ma frame pour mon bouton "droite"  (_root.droite) :

import mx.transitions.Tween;
_root.droite.onPress = function() {

    var myTween:Tween = new Tween(_root.all, "_x", mx.transitions.easing.Strong.easeOut, 0, -900, 1, true);

    myTween.onMotionChanged = function() {
        trace(this.position);
    };
};

Soit "all" (_root.all) une loooongue bande en clip. Mon but pour ainsi dire et de déplacer cette bande (qui avoisine les 10000 px de large) à coup de 900px (vers la gauche, donc d'où le "-900") à chaque pression du bouton "droite".
Mais voilà : en suivant la doc flash, il n'est question avec ce genre de code que de définir un emplacement (sur _x), et non d'incrémenter. J'aimerai, vous l'aurez compris, ajouter 900 sur le _x de "all"... Un menu déroulant en quelque sorte.
Alors bon évidement, pourquoi faire compliquer quand on peut faire simple : pourquoi ne pas avoir fait du "vrai" tweening avec des frames tout ça, mais j'ai quand même envie d'apprendre et d'aller au bout de mon idée.
Peut-être que la démarche est mauvaise, mais l'effet de Ease n'est pas négligeable, donc si vous connaissez une autre solution, je suis tout ouïe !
Enfin, pour conclure ma requete, je signale avoir testé au préalable ceci :
(_root.all, "_x", mx.transitions.easing.Strong.easeOut, 0, --900, 1, true);
et ceci :
(_root.all, "_x", mx.transitions.easing.Strong.easeOut, 0, -=900, 1, true);
et encore celà :
(_root.all, "_x", mx.transitions.easing.Strong.easeOut, 0, =-900, 1, true);

mais rien n'y fait... Help ! (et merci d'avance)

Soit dit en passant, en guise de PS : merci pour l'aide précieuse fournie il y a quelques moi, voilà le résultat : [www.piquelesyeux.com www.piquelesyeux.com ]

1 réponse

PEHA Messages postés 81 Date d'inscription mardi 10 août 2004 Statut Membre Dernière intervention 15 décembre 2009
20 avril 2009 à 18:22
  http://www.miran-lejeu.tkOMFG


Bon ben désolé, ce fut un joli mail, mais j'ai trouvé tout seul presque comme un grand !
Vous pourrez peut-être aller voir le résultat ici, quand ce sera vraiment fini ;)

La réponse était :







import mx.transitions.Tween;
_root.droite.onPress = function() {

    var myTween:Tween = new Tween(_root.all, "_x", mx.transitions.easing.Strong.easeOut,_root.all._x, _root.all._x-900  , 1, true);

    myTween.onMotionChanged = function() {
        trace(this.position);
    };
};
3