Bonjour, j'ai commencé il y a un mois processing. Je continue de faire divers tutoriels sur les sites et j'essaie peu à peu de m'amuser pour tester les différents codes.
J'ai essayé de développer un début de code pour qu'une tête détourée rebondisse sur l'écran et que je puisse de temps en temps la diriger avec les flèches du clavier.
Le mouvement fonctionne, le rebond également, mais le mouvement gérer par les flèches ne fonctionnent pas. Je n'arrive pas à comprendre mon erreur.
Merci d'avance si quelqu'un peut la désigner et m'expliquer
int x,y,X,Y; PImage marine; void setup() { size(800,800); marine=loadImage("amour1.png"); X=1; Y=2; x=width/2; y=height/2; } void draw() { mouvement(); image(marine,x,y,50,50); rebond(); } void keyPressed() { if (key == CODED){ if (key==LEFT) X=-5; if (key==RIGHT) X=5; if (key==UP) Y=-5; if (key==DOWN)Y=5; } else{ } } void mouvement() { x=x+X; y=y+Y; } void rebond() { if (x<0) { X=1; } if (x>width) { X=-1; } if (y>height) { Y=-1; } if (y<0) { Y=1; } }
Hors ligne
bonjour a toi
en fais c'est très simple tu a une petite erreur dans ton "void keyPressed()" tu utilise la valeur key dans tes 4 if alors que ça doit être keyCode
voila ta version
void keyPressed() { if (key == CODED){ if (key==LEFT) X=-5; if (key==RIGHT) X=5; if (key==UP) Y=-5; if (key==DOWN)Y=5; } else{ } }
voila comment il devrait être
void keyPressed() { if (key == CODED){ if (keyCode==LEFT) X=-5; if (keyCode==RIGHT) X=5; if (keyCode==UP) Y=-5; if (keyCode==DOWN)Y=5; } else{ } }
Hors ligne
Ooooh... Merci vraiment. J'avais remplacé, temporairement, les flèches par des lettres pour régler le problème ( mais ça continuait de m’embêter ).
Je vais corriger ça de suite et continuer mes bêtises. Bonne soirée.
Dernière modification par Alexandre (2017-04-27 00:12:47)
Hors ligne
Pages: 1