/** permet d'evaluer la configuration en lui associant un entier */ public int evaluer(ArrayList<Composante> ilotsJoueur, ArrayList<Composante> ilotsAdverses) { int valCourant = 0; int valAdvers = 0; // somme des evaluations de toutes les zones du joueur courant for (int l = 0; l < tabZones.get(donnees.getJoueurCourant()).size(); l++) { valCourant += tabZones.get(donnees.getJoueurCourant()).get(l).evaluer(); } // evaluation des ilots du joueur for (int c = 0; c < ilotsJoueur.size(); c++) { valCourant += ilotsJoueur.get(c).getNbPoissons(); } // evaluation des ilots adverses for (int c = 0; c < ilotsAdverses.size(); c++) { valAdvers += ilotsAdverses.get(c).getNbPoissons(); } // parcours des zones des adversaires for (int i = 0; i < donnees.getNbJoueurs(); i++) { // si c'est un adversaire if (i != donnees.getJoueurCourant()) { for (int l = 0; l < tabZones.get(i).size(); l++) { valAdvers += tabZones.get(i).get(l).evaluer(); } } } Joueur courant = donnees.getJoueurs()[donnees.getJoueurCourant()]; if (courant.getDifficulte() == 3) { valCourant += 2 * courant.getNombrePoissons(); for (int j = 0; j < donnees.getNbJoueurs(); j++) { if (j != donnees.getJoueurCourant()) { valAdvers += 2 * donnees.getJoueurs()[j].getNombrePoissons(); } } } return valCourant - valAdvers; }
/** permet d'evaluer la configuration en lui associant un entier */ public int evaluer() { int valCourant = 0; int valAdvers = 0; // somme des evaluations de toutes les zones du joueur courant for (int l = 0; l < tabZones.get(donnees.getJoueurCourant()).size(); l++) { valCourant += tabZones.get(donnees.getJoueurCourant()).get(l).evaluer(); } // parcours des zones des adversaires for (int i = 0; i < donnees.getNbJoueurs(); i++) { // si c'est un adversaire if (i != donnees.getJoueurCourant()) { for (int l = 0; l < tabZones.get(i).size(); l++) { valAdvers += tabZones.get(i).get(l).evaluer(); } } } return valCourant - valAdvers; }