IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ActionScript 3 Discussion :

mouvement vers position de x


Sujet :

ActionScript 3

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2009
    Messages : 11
    Par défaut mouvement vers position de x
    bonjours
    ma question est simple, je veux qu'au moment d'un clic, mon movieclip dégage vers x=450.
    je sais seulement lui dire de reculer de tent ou je ne sais quoi, mais ce que je voudrais, moi c'est qu'il aille vraiment vers cette position de x.

    tout cela est sensé acompagner un autre mouvement qui doit etre stopé au moment où le premier clip ateinds justement cette fameuse position en x.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
     
    var vitesse:Number=0;
    var clicked=false;
     
    mov11.addEventListener(Event.ENTER_FRAME,traveling);
     
    function traveling(e:Event){
    	if(!clicked){
        	vitesse = 0;
        	if (mouseX<150) vitesse = - (150-mouseX);
        	if (mouseX>874) vitesse = + (mouseX-874)
        	mov11.x -= vitesse/9;
        	if (mov11.x<-1081) mov11.x += 1081;
        	if (mov11.x>0) mov11.x -= 1081;
        	mov22.x = mov11.x+1081;
    	}else{
        	mov11.x -= 50;
        	if (mov11.x<-1081) mov11.x += 1081;
        	if (mov11.x>0) mov11.x -= 1081;
        	mov22.x = mov11.x+1081;
    	}
    }
     
    //evenements clikables
     
     
    clikable1.addEventListener(Event.ENTER_FRAME,travelong);
     
    function travelong(e:Event){
    	if(!clicked){
        	vitesse = 0;
    		if (mouseX<140) vitesse = - (140-mouseX);
    		if (mouseX>884) vitesse = + (mouseX-884)
    		clikable1.x -= vitesse/11;
    		if (clikable1.x<-200) clikable1.x += 1424;
    		if (clikable1.x>1224) clikable1.x -= 1424;
    		}//ici?
    }
     
    clikable1.addEventListener(MouseEvent.MOUSE_DOWN,rotaclic);
    function rotaclic(e:MouseEvent){
    	clicked=true;
    	if (clikable1.x>450) clicked=true;
    }

    quand je clic sur clikable1:
    mov1 se déplace comme indiqué
    clikable1 doit se déplacer jusqu'a x=450
    quand clikable1 atteint x=450
    tout le monde s'arrete

    betit bonus: si je peut avoir une acceleration et une décélération, je prends, sinon c'est pas grave

    ah, et j'allais oublier, les sens de mouvements doivent etres inverser selon que clikable1 doive aller dans le sens 0>450 ou 1024>450 !

    merci beaucoup d'éclairer ma lampe a pétrole vide.

  2. #2
    Membre chevronné Avatar de IP-Fix
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    421
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mars 2006
    Messages : 421
    Par défaut
    PLutot que de te prendre la tete avec un code compliqué , tu connais les tween ? ^^

    Voila un code d'exemple répondant a ton probleme
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
     
    import fl.transitions.Tween;
    import fl.transitions.TweenEvent;
    import fl.transitions.easing.*;
     
    //Sprite de test;
    var sprite1:Sprite = new Sprite();
    var sprite2:Sprite = new Sprite();
    sprite1.graphics.beginFill(0);
    sprite1.graphics.drawRect(0,0,30,30);
    sprite2.graphics.copyFrom(sprite1.graphics);
    sprite2.x = 90;
     
    addChild(sprite1);
    addChild(sprite2);
     
    //Objet tween;
    var tw:Tween;
     
    //Premier mouvement;
    //Tween(obj:Object, prop:String, func:Function, begin:Number, finish:Number, duration:Number, useSeconds:Boolean = false)
    tw = new Tween(sprite1,'x',None.easeNone,sprite1.x,480,25);
    tw.addEventListener(TweenEvent.MOTION_FINISH, gomc2);
    tw.start();
     
    //Second mouvement;
    function gomc2(e:Event){
    	//On lave manuellement la mémoire
    	tw.removeEventListener(TweenEvent.MOTION_FINISH, gomc2);
    	//On lance le second mouvement
    	tw = new Tween(sprite2,'x',None.easeNone,sprite2.x,0,25);
    	tw.start();
    }

  3. #3
    Membre expérimenté Avatar de romain_ci
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    262
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2007
    Messages : 262
    Par défaut
    Citation Envoyé par IP-Fix Voir le message
    PLutot que de te prendre la tete avec un code compliqué , tu connais les tween ? ^^

    Voila un code d'exemple répondant a ton probleme
    Les Tweens sont pratiquent mais bugger
    Surtout si tu les utilisent pour une appli destiné au net.

    La Solution est d'utiliser la Class TweenLite.as, tu peut la télécharger sur le net.


  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2009
    Messages : 11
    Par défaut
    ok je test ca tout de suite... oui justement on mon prof ma aussi conséillé d'utiliser les tween...

Discussions similaires

  1. Lien vers position dans unepage avec ascenseur
    Par suprateam dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 11/02/2012, 21h40
  2. point 2D vers position 3D
    Par Goffer dans le forum Traitement d'images
    Réponses: 15
    Dernier message: 25/08/2010, 12h59
  3. Export d'une table vers un fichier positional
    Par jsd03 dans le forum Import/Export
    Réponses: 1
    Dernier message: 22/12/2008, 18h51
  4. Positions - points vers cellule
    Par beekeep dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 22/05/2007, 15h01
  5. definir la position de la barre de défilement au maximun vers le bas
    Par tdo1 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 28/09/2006, 22h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo