Se connecter avec
S'enregistrer | Connectez-vous

Je ne trouve pas l'erreur ?

Dernière réponse : dans Programmation

salut a tous :bounce: 
Voila je débute sur flash et je ne trouve pas le problème à mon script ? :

angle = 90;
vit = 8;
onEnterFrame = function () {
if (Key.isDown(Key.LEFT)) {
auto._x -= vit;
auto._rotation = angle*2;
} else if (Key.isDown(Key.RIGHT))
auto._x += vit;
auto._rotation = 0;
} else if (Key.isDown(Key.UP)) {
auto_y += vit;
auto._rotation = -angle;
} else if (Key.isDown(Key.DOWN)) {
auto_y += vit;
auto._rotation = angle;
}
};

j'ai un clip avec un petite voiture de dessiné, mais quand je test l'animation, elle n'avance pas ?
merci

Autres pages sur : trouve erreur

Lassé par la pub ? Créez un compte
Expert Programmation

Salut,

je te conseil d'utiliser un écouteur pour la détection de l'appui sur les touches :

  1. var vit:Number = 10;
  2. var keyListener_obj:Object = new Object();
  3. keyListener_obj.onKeyDown = function() {
  4. switch (Key.getCode()) {
  5. case Key.LEFT :
  6. auto._x -= vit;
  7. break;
  8. case Key.UP :
  9. auto._y -= vit;
  10. break;
  11. case Key.RIGHT :
  12. auto._x += vit;
  13. break;
  14. case Key.DOWN :
  15. auto._y += vit;
  16. break;
  17. }
  18. };
  19. Key.addListener(keyListener_obj);


Edit : j'ai pas compris pour l'angle

desolé j'essaie mais ca ne marche pas ?
Sa indique :
"**Erreur** Séquence = Séquence 1, calque = Calque 1, image = 1 :Ligne 1 : Erreur de syntaxe.
1. var vit:Number = 10;

**Erreur** Séquence = Séquence 1, calque = Calque 1, image = 1 :Ligne 2 : Erreur de syntaxe.
2. var keyListener_obj:o bject = new Object();

**Erreur** Séquence = Séquence 1, calque = Calque 1, image = 1 :Ligne 3 : Erreur de syntaxe.
3. keyListener_obj.onKeyDown = function() {

**Erreur** Séquence = Séquence 1, calque = Calque 1, image = 1 :Ligne 4 : Erreur de syntaxe.
4. switch (Key.getCode()) {

**Erreur** Séquence = Séquence 1, calque = Calque 1, image = 1 :Ligne 5 : Erreur de syntaxe.
5. case Key.LEFT :

**Erreur** Séquence = Séquence 1, calque = Calque 1, image = 1 :Ligne 6 : Erreur de syntaxe.
6. auto._x -= vit;

**Erreur** Séquence = Séquence 1, calque = Calque 1, image = 1 :Ligne 7 : Erreur de syntaxe.
7. break;

**Erreur** Séquence = Séquence 1, calque = Calque 1, image = 1 :Ligne 8 : Erreur de syntaxe.
8. case Key.UP :

**Erreur** Séquence = Séquence 1, calque = Calque 1, image = 1 :Ligne 9 : Erreur de syntaxe.
9. auto._y -= vit;

**Erreur** Séquence = Séquence 1, calque = Calque 1, image = 1 :Ligne 10 : Erreur de syntaxe.
10. break;

**Erreur** Séquence = Séquence 1, calque = Calque 1, image = 1 :Ligne 11 : Erreur de syntaxe.
11. case Key.RIGHT :

**Erreur** Séquence = Séquence 1, calque = Calque 1, image = 1 :Ligne 12 : Erreur de syntaxe.
12. auto._x += vit;

**Erreur** Séquence = Séquence 1, calque = Calque 1, image = 1 :Ligne 13 : Erreur de syntaxe.
13. break;

**Erreur** Séquence = Séquence 1, calque = Calque 1, image = 1 :Ligne 14 : Erreur de syntaxe.
14. case Key.DOWN :

**Erreur** Séquence = Séquence 1, calque = Calque 1, image = 1 :Ligne 15 : Erreur de syntaxe.
15. auto._y += vit;

**Erreur** Séquence = Séquence 1, calque = Calque 1, image = 1 :Ligne 16 : Erreur de syntaxe.
16. break;

**Avertissement** Séquence = Séquence 1, calque = Calque 1, image = 1 :Ligne 5 : Les instructions précédant la première instruction 'case' d'une instruction 'switch' sont ignorées
5. case Key.LEFT :

**Erreur** Séquence = Séquence 1, calque = Calque 1, image = 1 :Ligne 19 : Erreur de syntaxe.
19. Key.addListener(keyListener_obj);

Total des erreurs ActionScript : 18 Erreurs signalées : 18"

peut-etre par ce que j'utilise Flash ?
merci

oui en fait j'avais pris les chiffres avec, c'est pourquoi ca ne marche pas.
pourtant avec ton code, la voiture ne se deplace pas ? mais il ne me trouve pas d'erreur,
ni meme avec ce code tres simple:
var vit = 2;
onEnterFrame = function () {
if (Key.isDown(Key.LEFT)) {
auto._x -= vit;
} else if (Key.isDown(Key.RIGHT)) {
auto._x += vit;
} else if (Key.isDown(Key.UP)) {
auto._y -= vit;
} else if (Key.isDown(Key.DOWN)) {
auto._y += vit;
}
};

pourtant je selectionne m

Sinon j'ai reussi a faire qq chose, qui marche, je te passe le script :
onClipEvent (load) {
vitesse = 0;
x = 0;
y = 0;
}
onClipEvent (enterFrame) {
if (Key.isDown(Key.UP)) {
vitesse += 1;
}
if (Key.isDown(Key.DOWN)) {
vitesse -= 0.2;
}
if (Key.isDown(Key.LEFT)) {
_rotation -= 8;
}
if (Key.isDown(Key.RIGHT)) {
_rotation += 8;
}
if (Math.abs(vitesse)>1) {
vitesse *= 0.9;
}
x = Math.cos(_rotation*(Math.PI/180))*vitesse;
y = Math.sin(_rotation*(Math.PI/180))*vitesse;
if (_root.rond.hitTest(_x+x, _y+y, true)) {
vitesse *= -0.5;
} else {
_x += x;
_y += y;
}
}


mais la le probleme, c'est que quand je n'appuie pas sur une touche la voiture bouge encore ? comment lui dire qu'elle ne bouge plus ?
Lassé par la pub ? Créez un compte
Tom's guide dans le monde