diff --git a/src/project/PetiteRegion.java b/src/project/PetiteRegion.java index 4d2d1966ebee2105cec859269fceb44300491a89..00895a819532bfaf743a7309a8026e8e72a8074b 100644 --- a/src/project/PetiteRegion.java +++ b/src/project/PetiteRegion.java @@ -41,7 +41,7 @@ public class PetiteRegion extends Region{ boolean nouveauStatusAcquise = true; int i = 0; while(i < 8 && nouveauStatusAcquise){ - if(cases[i].getCouleur() != cases[i+1].getCouleur()){ + if(cases[i].getCouleur() != cases[i+1].getCouleur() || cases[i].getCouleur() == Couleur.A){ nouveauStatusAcquise = false; } i++; diff --git a/src/project/Plateau.java b/src/project/Plateau.java index e891531a31b512b98c1bb96d940fb629173e61d8..99700b44e86d103ec7d26581f83c1acfc616a0a6 100644 --- a/src/project/Plateau.java +++ b/src/project/Plateau.java @@ -106,8 +106,6 @@ public class Plateau{ this.partie.setScore(this.partie.getScore()-1); break; } - - System.out.println("Case : " + this.matrice[i][j].ligne + "; " + this.matrice[i][j].colonne + "; couleur : " + this.matrice[i][j].getCouleur() + "; input file : " + c); } scanner.next(); } @@ -467,10 +465,13 @@ public class Plateau{ */ //O(n) public void colorierCaseTemeraire(Case c, Joueur joueur){ + Case[] voisins = this.voisins(c); boolean coloriee = c.getPregion().estColoriee(); + + if(c.getCouleur() == Couleur.A){ colorierTemeraire(c, joueur.couleur); @@ -480,13 +481,14 @@ public class Plateau{ } + for (Case x : voisins){ - if (!x.caseColoriee() && !x.equals(c) && !x.estAcquise()){ + if (x.caseColoriee() && !x.equals(c) && !x.estAcquise()){ colorierTemeraire(x, joueur.couleur); - if(c.getPregion().getNbColoriees() == 9){ - c.getPregion().updateAcquise(); - c.getPregion().updateColoriee(); + if(x.getPregion().getNbColoriees() == 9){ + x.getPregion().updateAcquise(); + x.getPregion().updateColoriee(); } } } @@ -581,13 +583,9 @@ public class Plateau{ //O(n) private void RemplirRegion(Region reg, Couleur couleur) { - System.out.println("longueur : " + reg.getLongueur()); - Region regsup = reg.getRegionSuperieure(); - System.out.println("longueur sup : " + regsup.getLongueur() + " est coloriƩe? : " + regsup.estColoriee()); - if(regsup != null && regsup.estColoriee()) { int compteurRegionsAcquises = 0;