Une vitesse

Résolu
oliver7 Messages postés 102 Date d'inscription dimanche 3 octobre 2004 Statut Membre Dernière intervention 8 septembre 2006 - 24 janv. 2005 à 16:17
John_Doe_88 Messages postés 606 Date d'inscription samedi 12 juin 2004 Statut Membre Dernière intervention 13 décembre 2006 - 19 févr. 2005 à 18:32
slt

mon prob. j'ai 2 clip : un en arriere plan et l'autre dessus, j'ai fait que quand on clic sur l'arriere plan l'autre clip va la où on a cliquer. Mais je veut que le clip qui doit se deplacer le fasse qu'a une certaine vitesse et pas d'un seul coup.

le code de l'arriere plan :

onClipEvent (mouseDown) {
_root.head._x = _xmouse;
_root.head._y = _ymouse;
}

head : le clip qui doit se deplacer

merci

olivier

9 réponses

oliver7 Messages postés 102 Date d'inscription dimanche 3 octobre 2004 Statut Membre Dernière intervention 8 septembre 2006
19 févr. 2005 à 09:29
g demmander a bombay
il m'a dit autre chose et sa marche :

onClipEvent (mouseDown) {
// mémorisation des coordonées de la souris dans le repere principal ( _root). Ce sont les coordonées du point cible
xmouse =_root._xmouse;
ymouse =_root._ymouse;
}
// evenement onEnterFrame d'un MovieClip : execution en boucle autant de fois par secondes que le FPS de l'anim
onClipEvent (enterFrame) {
// on ajoute 1/5 du chemin qui reste a parcourir en _x et _y entre la position du clip et le point cible
_x+=( xmouse - _x)/5;
_y+=( ymouse - _y)/5;
}

olivier
3
John_Doe_88 Messages postés 606 Date d'inscription samedi 12 juin 2004 Statut Membre Dernière intervention 13 décembre 2006
24 janv. 2005 à 16:33
Utilise setInterval()
0
oliver7 Messages postés 102 Date d'inscription dimanche 3 octobre 2004 Statut Membre Dernière intervention 8 septembre 2006
24 janv. 2005 à 19:40
je n'ai pas compris comment l'utiliser !

olivier
0
John_Doe_88 Messages postés 606 Date d'inscription samedi 12 juin 2004 Statut Membre Dernière intervention 13 décembre 2006
24 janv. 2005 à 23:12
Ca te permet d'appeler une fonction a intervalle
regulier, donc l'idée c que tu appelle une fonction toutes les 20
millisecondes par exemple (cette fonction deplacant le clip d'une
petite distance). Allez je suis gentil j te fais le code :




onClipEvent (mouseDown) {
xsouris = _xmouse; //on memorise les positions de la souris
ysouris = _ymouse;
D = setInterval("deplacement", 20); //appelele la fonction totues les 20 millisecondes



function deplacement() {

if ( _root.head._x xsouris) && ( _root.head._y ysouris) { //si on atteint la position d'aiirivée


clearInterval(D); //on arrete le deplacement, vérifie dans l'aide
parce que je suis pas sur de la syntaxe

else {

//ben la deplacement, du style

if (
_root.head._x > xsouris) {


_root.head._x -(xsouris-_root.head._x) /100; // avec 100 20*5
donc 5 secondes pour deplacer le clip

}


if (
_root.head._x < xsouris) {

_root.head._x +=
(xsouris-_root.head._x)
/100;

}


//et la meme chose pour y, je te laisse faire


}
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
oliver7 Messages postés 102 Date d'inscription dimanche 3 octobre 2004 Statut Membre Dernière intervention 8 septembre 2006
9 févr. 2005 à 14:15
Sa marche pas du tout, j'ai corriger les erreurs comme } et fni le reste mais sa ne bouge pas

olivier
0
John_Doe_88 Messages postés 606 Date d'inscription samedi 12 juin 2004 Statut Membre Dernière intervention 13 décembre 2006
9 févr. 2005 à 15:17
Ben fais d trace pour savoir a quel nivo ca marche pa : si c le setInterval ou alors dan la fonction deplacement.....
0
oliver7 Messages postés 102 Date d'inscription dimanche 3 octobre 2004 Statut Membre Dernière intervention 8 septembre 2006
11 févr. 2005 à 21:38
je croi que j'ai un beug le tout premier code

onClipEvent (mouseDown) {
_root.head._x = _xmouse;
_root.head._y = _ymouse;
}

fait chez moi que l'image ne va pas sur la souris mes n'importe où !!!!!!!!!!!!
0
John_Doe_88 Messages postés 606 Date d'inscription samedi 12 juin 2004 Statut Membre Dernière intervention 13 décembre 2006
12 févr. 2005 à 01:02
Mais elle bouge bien quand meme ? Si c le cas essaie avec ca :

onClipEvent (mouseDown) {
_root.head._x = _root._xmouse;
_root.head._y = _root._ymouse;
}
0
John_Doe_88 Messages postés 606 Date d'inscription samedi 12 juin 2004 Statut Membre Dernière intervention 13 décembre 2006
19 févr. 2005 à 18:32
Ben oui il y a souvent plusieurs solutions pour faire un truc. Ceci dit
ma solution est meilleure parce que un onEnterFrame c appelé tout le
temps (dans ton cas une fois que ton clip est à la bonne place il bouge
plus, mais le onEnterFrame est toujours appelé) alors que setInterval
n'est appelé que le nombre de fois voulu. De manière générale j'essaie
d'éviter d'utiliser des enterFrame parce que c souvent très lourd.

Par contre tu pourrais peut etre utiliser delete pour optimiser...
0