Bonjour
J'ai besoin de votre aide pour corriger l'erreur de la grande diagonale sur le damier.
La grande diagonale doit toujours être à gauche du joueur qui a les pions blancs.
Cordialement
Pièce jointe 205199Pièce jointe 205200
Version imprimable
Bonjour
J'ai besoin de votre aide pour corriger l'erreur de la grande diagonale sur le damier.
La grande diagonale doit toujours être à gauche du joueur qui a les pions blancs.
Cordialement
Pièce jointe 205199Pièce jointe 205200
Salut,
Au lieu de nous donner tout le code qu'on se débrouille avec, donne nous uniquement le code utile (le remplissage du damier pour commencer).
Je ne sais pas comment tu fais, mais la plupart des techniques reposent sur la notion de modulo (donnant 0 ou 1 en résultat) : un décalage de couleurs dans le case se résout par un décalage de valeur de manière a décaler le résultat du modulo. Une des techniques les plus simples de faire:
Code:
1
2
3
4
5
6
7
8 final int nbSquares=board.getNbLines()*board.getNbColumns(); // nombre de cases for(int i=0; i<nbSquares; i++) { final int line = i/board.getNbColumns(); // numéro de ligne (0<=line<board.getNbLines()) final int column = i%board.getNbColumns(); // numéro de colonne (0<=line<board.getNbColonnes()) final Color color = i%2==line%2?WHITE_SQUARE:BLACK_SQUARE; // détermine la couleur de la case correspondante (inverser les deux couleurs pour décaler) /*...*/ }