Probleme sur mouvement horizontal d'un clip géré par xmouse

past82 Messages postés 6 Date d'inscription jeudi 17 janvier 2008 Statut Membre Dernière intervention 6 janvier 2009 - 3 juin 2008 à 10:18
Skev Messages postés 255 Date d'inscription mardi 27 juin 2006 Statut Membre Dernière intervention 9 janvier 2010 - 3 juin 2008 à 16:10
Bonjour à tous,
Je suis en train de développer un bandeau flash pour un site et je voudrais que le fond bouge horizontalement en fonction du mouvement de la souris. Jusque là ca va à peu près... Mais j'aimerais rajouter un autre visuel par dessus le fond (image detouree) qui bouge aussi en fonction de la souris.
Mon problème est qu'avec le code que j'utilise pour le moment le mouvement est calculé sur la taille du document entier. C'est bien pour le fond mais pas pour la petite image au dessus qui devrait bouger beaucoup moins.

En resume je cherche a contraindre le mouvement de ma petite image (qui est un clip-occurence : sdf) sur l'axe x. Voilà le code que j'utilise pour l'instant sur mes 2 clips (fond et petite image).

J'espere que je suis assez clair. Help please !!!
Alban.

this.onMouseMove = function() {
 constrainedMove(sdf, 4, 1);
};
function constrainedMove(target:MovieClip, speed:Number, dir:Number) {
 var mousePercent:Number = _xmouse/Stage.width;
 var mSpeed:Number;
 if (dir == 1) {
  mSpeed = 1-mousePercent;
 } else {
  mSpeed = mousePercent;
 }
 target.destX = Math.round(-((target._width-Stage.width)*mSpeed));
 target.onEnterFrame = function() {
  if (target._x == target.destX) {
   delete target.onEnterFrame;
  } else if (target._x>target.destX) {
   target._x -= Math.ceil((target._x-target.destX)*(speed/10));
  } else if (target._x<target.destX) {
   target._x += Math.ceil((target.destX-target._x)*(speed/10));
  }
 };
}

1 réponse

Skev Messages postés 255 Date d'inscription mardi 27 juin 2006 Statut Membre Dernière intervention 9 janvier 2010 3
3 juin 2008 à 16:10
Bonjour,
D'apres ce que j'ai compris tu voudrais que lorsque ton clip de fond (sdf dans mon code) touche le bord de la scene, ton clip de dessus (sdf2 dans mon code) s'arrete de bouger lui aussi.
J'ai uniquement changer 4 ligne dans code :

this.onMouseMove = function() {
    constrainedMove(sdf, sdf2, 4, 1);//Rajout d'une seconde cible
};
function constrainedMove(target:MovieClip, target2:MovieClip, speed:Number, dir:Number) {
    var mousePercent:Number = _xmouse/Stage.width;
    var mSpeed:Number;
    if (dir == 1) {
        mSpeed = 1-mousePercent;
    } else {
        mSpeed = mousePercent;
    }
    target.destX = Math.round(-((target._width-Stage.width)*mSpeed));
    target.onEnterFrame = function() {
        if (target._x == target.destX) {
            delete target.onEnterFrame;
        } else if (target._x>target.destX) {
            target._x -= Math.ceil((target._x-target.destX)*(speed/10));
            target2._x -= Math.ceil((target._x-target.destX)*(speed/10));//Valeur de la seconde cible
        } else if (target._x<target.destX) {
            target._x += Math.ceil((target.destX-target._x)*(speed/10));
            target2._x += Math.ceil((target.destX-target._x)*(speed/10));//Valeur de la seconde cible
        }
    };
}
0
Rejoignez-nous