from random import randint from Outils.Moteur_de_jeu import Pathfinding from Outils.Moteur_de_jeu.Pathfinding import * from Outils.Moteur_de_jeu import Joueur from Outils.Moteur_de_jeu.Joueur import * class IA_semi_random(Joueur) : def __init__(self, nom) : Joueur.__init__(self, "O", nom) def calculer_coup(self, plateau, liste_coups) : indices_B = [] for i in range(len(liste_coups)) : if liste_coups[i].type == "B" : indices_B.append(i) #On choisit un des deux types de mouvement, on mélange la liste qui lui correspond et on en retourne le premier élément sous forme de coup if randint(0,1) == 1 or indices_B == [] : #Si aucune barrière ne peut être placée, on est obligé de se déplacer chemin = path_finding (plateau, plateau.pions[self.num][0], plateau.pions[self.num][1],plateau.rangee_desiree(self.num)) for i in range (len(liste_coups)) : if liste_coups[i].case == chemin[1] : return i return 0 else : return randint(0, len(indices_B) - 1) return indices_B[i]