Exemple #1
0
    def comparer_blanc_noir(self, blanc,
                            noir):  #todo faire un debug affichable
        if self.Augmentation_coup_possible_adv_dans_zone(
                self.plateau, noir, ZONE_COIN) <= 0:
            #Ok on peut envisager de jouer noir
            coeff_blanc, coeff_noir = [], []
            coeff_blanc.append(
                self.Augmentation_pion_stable_dans_zone(
                    self.plateau, self.cote, ZONE_TOUT, blanc))
            coeff_noir.append(
                self.Augmentation_pion_stable_dans_zone(
                    self.plateau, self.cote, ZONE_TOUT, noir))

            coeff_blanc.append(self.Nombre_pion_retourne(self.plateau, blanc))
            coeff_noir.append(self.Nombre_pion_retourne(self.plateau, noir))

            outils.ajouter_coeff_alea(coeff_blanc, coeff_noir)

            cfg.debug("##Cas particu noir {} est mieux que blanc {}".format(
                noir, blanc))
            if est_superieur(coeff_blanc, coeff_noir):
                return blanc
            else:
                return noir

        return blanc
Exemple #2
0
    def comparer_vert_noir(self, vert, noir):
        if self.Augmentation_coup_possible_adv_dans_zone(
                self.plateau, noir, ZONE_COIN) <= 0:
            #Ok on peut envisager de jouer noir
            coeff_vert, coeff_noir = [], []

            coeff_vert.append(
                self.Augmentation_pion_stable_dans_zone(
                    self.plateau, self.cote, ZONE_BORD, vert))
            coeff_noir.append(
                self.Augmentation_pion_stable_dans_zone(
                    self.plateau, self.cote, ZONE_BORD, noir))

            coeff_vert.append(
                self.Augmentation_pion_dans_zone(self.plateau, self.cote,
                                                 ZONE_BORD, vert))
            coeff_noir.append(
                self.Augmentation_pion_dans_zone(self.plateau, self.cote,
                                                 ZONE_BORD, noir))

            coeff_vert.append(self.Nombre_pion_retourne(self.plateau, vert))
            coeff_noir.append(self.Nombre_pion_retourne(self.plateau, noir))

            outils.ajouter_coeff_alea(coeff_vert, coeff_noir)
            if est_superieur(coeff_vert, coeff_noir):
                return vert
            else:
                return noir

        return vert
Exemple #3
0
    def comparer_coin(self, pos1, pos2):
        coeff1, coeff2 = [], []

        coeff1.append(
            self.Nombre_coin_adjacent_pris(self.plateau, self.cote, pos1))
        coeff2.append(
            self.Nombre_coin_adjacent_pris(self.plateau, self.cote, pos2))

        coeff1.append(
            self.Augmentation_pion_stable_dans_zone(self.plateau, self.cote,
                                                    ZONE_BORD, pos1))
        coeff2.append(
            self.Augmentation_pion_stable_dans_zone(self.plateau, self.cote,
                                                    ZONE_BORD, pos2))

        coeff1.append(
            self.Augmentation_pion_dans_zone(self.plateau, self.cote,
                                             ZONE_BORD, pos1))
        coeff2.append(
            self.Augmentation_pion_dans_zone(self.plateau, self.cote,
                                             ZONE_BORD, pos2))

        coeff1.append(self.Nombre_pion_retourne(self.plateau, pos1))
        coeff2.append(self.Nombre_pion_retourne(self.plateau, pos2))

        outils.ajouter_coeff_alea(coeff1, coeff2)
        if est_superieur(coeff1, coeff2):
            return pos1
        else:
            return pos2
Exemple #4
0
 def comparer_blanc(self, pos1, pos2):
     coeff1, coeff2 = [], []
     coeff1.append(self.Nombre_pion_retourne(self.plateau, pos1))
     coeff2.append(self.Nombre_pion_retourne(self.plateau, pos2))
     outils.ajouter_coeff_alea(coeff1, coeff2)
     if est_superieur(coeff1, coeff2):
         return pos1
     else:
         return pos2
Exemple #5
0
 def comparer_rouge(self, pos1, pos2):
     coeff1, coeff2 = [], []
     coeff1.append(-1 * self.Augmentation_coup_possible_adv_dans_zone(
         self.plateau, pos1, ZONE_BORD))
     coeff2.append(-1 * self.Augmentation_coup_possible_adv_dans_zone(
         self.plateau, pos2, ZONE_BORD))
     coeff1.append(self.Nombre_pion_retourne(self.plateau, pos1))
     coeff2.append(self.Nombre_pion_retourne(self.plateau, pos2))
     outils.ajouter_coeff_alea(coeff1, coeff2)
     if est_superieur(coeff1, coeff2):
         return pos1
     else:
         return pos2
Exemple #6
0
    def comparer_rouge_noir(self, rouge,
                            noir):  #todo revoir ca + debug affichage
        if self.Augmentation_coup_possible_adv_dans_zone(
                self.plateau, noir, ZONE_COIN) <= 0:
            #Ok on peut envisager de jouer noir
            coeff_rouge, coeff_noir = [], []

            coeff_rouge.append(
                self.Augmentation_pion_stable_dans_zone(
                    self.plateau, self.cote, ZONE_TOUT, rouge))
            coeff_noir.append(
                self.Augmentation_pion_stable_dans_zone(
                    self.plateau, self.cote, ZONE_TOUT, noir))

            coeff_rouge.append(self.Nombre_pion_retourne(self.plateau, rouge))
            coeff_noir.append(self.Nombre_pion_retourne(self.plateau, noir))

            outils.ajouter_coeff_alea(coeff_rouge, coeff_noir)
            if est_superieur(coeff_rouge, coeff_noir):
                return rouge
            else:
                return noir

        return rouge
Exemple #7
0
    def comparer_noir(self, pos1, pos2):
        coeff1, coeff2 = [], []

        coeff1.append(-1 * self.Augmentation_coup_possible_adv_dans_zone(
            self.plateau, pos1, ZONE_COIN))
        coeff1.append(-1 * self.Augmentation_coup_possible_adv_dans_zone(
            self.plateau, pos2, ZONE_COIN))

        coeff1.append(
            int(self.position_stable_pour_cote(self.plateau, pos1, self.cote)))
        coeff2.append(
            int(self.position_stable_pour_cote(self.plateau, pos2, self.cote)))

        #todo faire cas Case noir sur l'extrême bord, juste à côté d’un coin conquis

        coeff1.append(self.Nombre_pion_retourne(self.plateau, pos1))
        coeff2.append(self.Nombre_pion_retourne(self.plateau, pos2))

        outils.ajouter_coeff_alea(coeff1, coeff2)
        if est_superieur(coeff1,
                         coeff2):  #todo utiliser le mot cle or en python
            return pos1
        else:
            return pos2