bonjour;
J'aimerais que la couleur du cercle change une fois sur deux dans le programme suivant.
Merci.
Grille grille; color b; void setup(){ size(500,500); grille=new Grille(); for(int i=0;i<5;i++) { fill(0); line(100,100+i*50,300,100+i*50); line(100+i*50,100,100+i*50,300); } } void draw(){ grille.jeux(); } void mousePressed(){ if(mousePressed) { fill(b); ellipse(mouseX,mouseY,20,20); } } class Grille{ int a; color b; Grille(){ a=16; b=color(255,0,255); } void jeux(){ int r=a%2; if(r==0) { b=color(255,0,255); } else{ b=color(0,255,255); } } }
Hors ligne
Bonjour,
Il suffit d'introduire une variable que tu incrémenteras à chaque pression du bouton de la souris. Si le compteur est pair alors le remplissage se fera d'un couleur sinon d'une autre. Pour tester la parité, on utilise le reste d'une division entière par deux.
Grille grille; color b; int compteur; void setup() { size(500, 500); grille=new Grille(); for (int i=0;i<5;i++) { fill(0); line(100, 100+i*50, 300, 100+i*50); line(100+i*50, 100, 100+i*50, 300); } compteur = 0; } void draw() { grille.jeux(); } void mousePressed() { if ((compteur % 2) == 0) { fill(255, 0, 0); } else { fill(0, 255, 0); } compteur++; ellipse(mouseX, mouseY, 20, 20); } class Grille { int a; color b; Grille() { a=16; b=color(255, 0, 255); } void jeux() { int r=a%2; if (r==0) { b=color(255, 0, 255); } else { b=color(0, 255, 255); } } }
Hors ligne
Merci pour ta réponse.
Hors ligne