Création jeu du « démineur » en Python – Partie 3/3

Nous allons maintenant passer à l’interaction avec l’utilisateur. C’est à dire que nous allons dire au programme quoi faire lorsque tu cliques avec la souris. Comme nous l’avons vue dans une partie précédente, le Click gauche de la souris est reconnaissable avec le code < Button – 1 >. Nous allons associer ce click gauche à la fonction quand_clique afin de dire au programme qu’elle opération il doit faire. La première ligne de commande sert à définir l’endroit où tu vas cliquer ( ligne et colonne )

Ensuite nous allons créer la fonction quand_clique afin de spécifier ce que le programme doit vérifier. Event fait référence à l’action de cliquer et Global permet de modifier les variables

Tu as maintenant besoin de déterminer avec exactitude où tu te trouves sur la grille. Pour cela nous allons utiliser le mot widget pour représenter l’endroit où tu as cliqué. Ensuite la commande carre.grid_info va te permettre d’extraire les informations du carré, à savoir la ligne et la colonne. Int permettra simplement de s’assurer que le résultat soit traité comme une variable nombre. Ensuite l’ordinateur la vérifier le texte à l’endroit où tu te trouves.  Pour cela tu vas utiliser la fonction cget(« text »)

Maintenant avant de vérifier les carré aux alentours, il faut vérifier le carré où tu te trouves. En particulier si tu tombe sur une mine. Dans ce cas le jeu est finit . C’est donc le but des lignes suivantes.  Si terrainmine[rangee][colonne] == 1 donc tu es sur une mine. Le carré devient rouge et le jeu s’arrête en disant que tu es tombé sur une mine. Si tu n’es pas sur une mine, nous allons commencer à verifier les carré aux alentours. C’est ici que la variable totalbombes va prendre tous son sens. Commence d’abord par la mettre à zéro.

Pour trouver où se caches les bombes tu dois vérifier les huit carré voisins un par un selon les étapes suivantes

  1. Si tu te trouves pas tous en bas ( rangée 9 ) tu n’as pas besoin de contrôler en dessous. Dans le cas contraire, l’ordinateur ajoute 1 à totalbombes si il trouve une bombe.
  2. Si tu te trouves sur la rangée du haut ( rangée 0 ), tu n’as pas besoin de contrôler au dessus. Dans le cas contraire, l’ordinateur ajoute 1 à totalbombes si il trouve une bombe.
  3. Si tu te trouves sur le bord gauche ( colonne 0 ), tu n’as pas besoin de contrôler à gauche. Dans le cas contraire, l’ordinateur ajoute 1 à totalbombes si il trouve une bombe.
  4. Si tu te trouves sur le bord droit ( colonne 9), tu n’as pas besoin de contrôler à droite. Dans le cas contraire, l’ordinateur ajoute 1 à totalbombes si il trouve une bombe.
  5. Si tu te trouves sur la rangée du haut ( rangée 0) OU sur le bord gauche ( colonne 0 ), tu n’as pas besoin de contrôler la diagonale.  Dans le cas contraire, l’ordinateur ajoute 1 à totalbombes si il trouve une bombe.
  6. Si tu te trouves sur la rangée du bas ( rangée 9 ) OU sur le bord gauche ( colonne 0 ), tu n’as pas besoin de contrôler la diagonale.  Dans le cas contraire, l’ordinateur ajoute 1 à totalbombes si il trouve une bombe.
  7. Si tu te trouves sur la rangée du haut ( rangee 0 ) OU sur le bord droit ( colonne 9 ), tu n’as pas besoin de contrôler la diagonale.  Dans le cas contraire, l’ordinateur ajoute 1 à totalbombes si il trouve une bombe.
  8. Si tu te trouves sur la rangée du bas ( rangée 9 ) OU sur le bord droit ( colonne 9 ), tu n’as pas besois de contrôler la diagonale.  Dans le cas contraire, l’ordinateur ajoute 1 à totalbombes si il trouve une bombe.

Enfin affiche le total des bombes dans le carré et augmente le score de 1. Ton programme est maintenant terminé, lance le jeu et amuse toi et félicitation car c’est un programme assez complexe mais tu y es arrivé !!

Ci dessous le code complet

Laisser un commentaire