ZerosquareLe 24/02/2008 à 12:21
J'ai pas étudié ton source en détail, mais à mon avis le problème vient du fait que ton programme est structuré comme ça :
- gestion de la touche droite -> mise à jour de x et dessin
- dessin qui utilise x
- gestion de la touche gauche -> mise à jour de x et dessin
Donc suivant que tu appuies sur gauche ou droite, tu utilises soit l'ancienne valeur de x, soit la nouvelle, dans la partie du milieu.
Solution : calcule d'abord la nouvelle valeur de x suivant les touches appuyées, et fait les opérations de dessin après.
Ah, et méfiance, tu fais [code]x=x+dir_x; [/code] alors que dir_x n'est pas initialisé.