Helppp mon problème est quand je clique du menu au plateau ou menupause au plateau ça met un jeton hors moi je désire juste revenir aux jeu . ( menupause __ 1 er rectangle ==menu ; 2 éme == plateau 3 éme pas encore fait ).
Merci d'avance !!!
Hors ligne
Bonsoir,
Ton problème vient que tu ne mets pas de test quand la souris est pressée. Tu test les zonas sans inclure si il s'agit du menu ou du plateau. J'ai règlé quelques problèmes à toi de peaufiner :
Une fois que tu auras fini ton boulot, tu regarderas la notion de classe qui te permettrai d'alléger considérablement ton code.
Hors ligne
UN GRAND MERCI A TOI Mushussu
Hors ligne
J'ai un autre probleme c'est le deuxiéme carré du menupause qui marche pas , je comprend pas !!
void draw() {
if ( menu == true ) {
minu ();
}
if (plateau == true ) {
nettoyer();
transition ();
cerclecarre ();
pause ();
joueurs ();
njoueurs ();
}
if ( menupause == true ) {
minupause ();
}
if (mouseButton == LEFT && 100 <= mouseX && mouseX <= 625 && 350 <= mouseY && mouseY <= 550 && menu) {
menu = false ;
menupause= false;
plateau= true ;
}
if (mouseButton == LEFT && 300 <= mouseX && mouseX <= 430 && 710 <= mouseY && mouseY <= 750 && plateau) {
plateau= false ;
menu = false ;
menupause= true;
}
if (mouseButton == LEFT && 200 <= mouseX && mouseX <= 600 && 100 <= mouseY && mouseY <= 300 && menupause) {
menu = false ;
menupause= false ;
plateau= true ;
}
if (mouseButton == LEFT && 200 <= mouseX && mouseX <= 600 && 300 <= mouseY && mouseY <= 500 && menupause) {
menupause= false ;
plateau= false ;
menu = true ;
}
}
Hors ligne
En fait, vu que tu avais mis le test de la présence dans les rectangles dans la boucle principale et que le test était uniquement sur la valeur mouseButton et non pas mousePressed alors, il détectait le clic dans le rectangle de menuPause, affichait le menu, refaisait le test du rectangle menu et comme le curseur était à l'intérieur du rectangle menu affichait ensuite le plateau.
Je te propose de passer tout les tests de présence dans la méthode void mousePressed(); :
Tu n'avais pas mis de nettoyage dans le cas où le menu est affiché :
void draw() { if ( menu == true ) { nettoyer(); minu (); }
Donc void draw(); :
void draw() { if ( menu == true ) { nettoyer(); minu (); } if (plateau == true ) { nettoyer(); transition (); cerclecarre (); pause (); joueurs (); njoueurs (); } if ( menupause == true ) { minupause (); } }
De plus, je te propose de modifier ta méthode void transition(); comme ceci :
void transition () { fill(0, 255, 255, 90); if (mouseY < 650) { rect(107 * (mouseX / 107), 107, 107, 550); } }
Hors ligne
VRAIMENTT UN GROOSS MERCI T UN DIEU !!
Hors ligne
Y aurait il un moyen de réinitialisé le plateau quand on clique sur jouer j'ai penser a vider le tableau mais sans résultat .
Hors ligne
Oui, en plus tu as déjà la l'algorithme pour le faire. Je t'ai bricolé une méthode le faisant et inversant le louer qui va recommencer une partie. C'est le perdant qui recommence.
Hors ligne
Re c'est encore mon est problème est que lorsque je suis sur le deuxième j'ai aucune interaction , aucun jeton n’apparaît . QUE FAIIRE HELPP !!
Hors ligne
Pages: 1