def __init__(self, nom_fichier=None): """ Méthode d'initialisation d'une partie. On initialise 4 membres: - planche: contient la planche de la partie, celui-ci contenant le dictionnaire de pièces. - couleur_joueur_courant: le joueur à qui c'est le tour de jouer. - tour_precedent_passe: un booléen représentant si le joueur précédent a passé son tour parce qu'il n'avait aucun coup disponible. - deux_tours_passes: un booléen représentant si deux tours ont été passés de suite, auquel cas la partie devra se terminer. - coups_possibles : une liste de tous les coups possibles en fonction de l'état actuel de la planche, initialement vide. On initialise ensuite les joueurs selon la paramètre nom_fichier. Si l'utilisateur a précisé un nom_fichier, on fait appel à la méthode self.charger() pour charger la partie à partir d'un fichier. Sinon, on fait appel à self.initialiser_joueurs(), qui va demander à l'utilisateur quels sont les types de joueurs qu'il désire. """ self.planche = Planche() self.couleur_joueur_courant = "noir" self.tour_precedent_passe = False self.deux_tours_passes = False self.coups_possibles = [] if nom_fichier is not None: self.charger(nom_fichier) else: self.initialiser_joueurs()
def __init__(self): super().__init__() self.planche = Planche() self.partie = Partie() # decommenter si on veut charger une partie et inserer le nom du fichier texte. #self.partie = Partie('partie_un_tour_a_passer.txt') # Nom de la fenêtre. self.title("Othello") # La position sélectionnée. self.position_selectionnee = None # Truc pour le redimensionnement automatique des éléments de la fenêtre. self.grid_columnconfigure(0, weight=1) self.grid_rowconfigure(0, weight=1) # Création du canvas_planche. self.canvas_planche = CanvasPlanche(self, 60) self.canvas_planche.grid(sticky=NSEW) # Ajout d'une étiquette d'information. self.messages = Label(self) self.messages.grid() # On lie un clic sur canvas_planche à une méthode. self.canvas_planche.bind('<Button-1>', self.selectionner) self.canvas_planche.pieces = self.convertir_case_a_piece()
def __init__(self): self.planche = Planche() self.couleur_joueur_courant = "noir" self.tour_precedent_passe = False self.deux_tours_passes = False self.coups_possibles = [] self.initialiser_joueurs()
from othello.planche import Planche from othello.planche import Piece import ast planche_de_jeu = Planche() print(planche_de_jeu) for col in planche_de_jeu.cases.values(): print(col.est_noir()) # planche_de_jeu.jouer_coup((5,4), "noir") # print(planche_de_jeu) # chaine = planche_de_jeu.convertir_en_chaine() # print(chaine) # chaine_en_liste = chaine.split("\n")[:-1] # print(chaine_en_liste) # print(chaine_en_liste[0][4:]) # compteur_blanc = 0 # compteur_noir = 0 # i = 0 # while i <= len(chaine_en_liste) - 1: # if chaine_en_liste[i][4:] == "noir": # compteur_noir += 1 # elif chaine_en_liste[i][4:] == "blanc": # compteur_blanc += 1 # i += 1 # print(compteur_blanc) # print(compteur_noir) # x = 3, 5, 5