Bonjour à tous je suis étudiant et je planche actuellement sur un sujet pour créer un mémory
Les cases sont en fait une liste de liste, les cartes sont des lettres. Chaque case est représentée par 2 listes de listes une avec la lettre de la case et une autre avec la valeur True ou False si la carte a déja été découverte ou pas.
J'ai presque terminé mais la dernière fonction me pose problème: Je n'arrive pas à cacher les deux cartes précédemment jouées si elles sont différentes.
Voici ma fonction
carte=0
def action(ligne,colonne):
if carte==0: #Je retourne la première carte
carte=1 #Au prochain tour je retournerais la 2e carte
for lig in range (nombreCases):
for col in range (nombreCases):
if decouvert[lig][col]==False:
canvas.delete (?????????) #Voila ou sa coince. Je veux masquer les deux cartes précédentes si elles sont différentes. En fait toutes les cartes avec False je le masque. Mais je ne sais pas quoi mettre à la place des points d'interrogation.
canvas.create_text (y0 +c*(ligne+.5),x0+c*(colonne+.5),text=matriceLettres[ligne][colonne]) #La j'affiche la carte ou j'ai cliqué (sa sa marche)
lettre1=matriceLettres[ligne][colonne] #je mémorise la lettre
else: #deuxième carte
carte=0 #Au prochain tour je retournerais la 1e carte
canvas.create_text (y0 +c*(ligne+.5),x0+c*(colonne+.5),text=matriceLettres[ligne][colonne]) #J'affiche la carte
lettre2=matriceLettres[ligne][colonne]
if lettre1==lettre2: #Si les Deux lettres sont les memes
decouvert[ligne][colonne]=True #La carte est découverte. Deuxième problème je n'arrive pas a rendre découverte la première carte
if fini():
termine.config(text="La partie est finie")
Je peux éventuellement vous mettre l'ensemble de mon programme.
Partager