Projet IMA3 P6, 2016/2017, TD1
= Projet IMA3-SC 2016/2017 : <TITRE> = Jeux de Morpions
Sommaire
Projet IMA3-SC 2016/2017 : Jeux du Morpion
Cahier des charges
Description du système
Pour mon projet, j'ai décidé de réaliser un jeu de morpion commandé par ordinateur, et affiché par un système de leds (2 matrice 3x3 de couleur différentes). Les joueurs pourront lancer une partie et en profiter jusqu’à ce que l’un d’eux gagne ou abandonne. Lorsqu’une partie se termine les statistiques de celles-ci seront affichés.
Ordinateur et interface de commande
L’ordinateur jouera le rôle d’interface, permettant aux utilisateurs de lancer une partie, de jouer et d’arrêter la partie quand ils le souhaitent. Plusieurs boutons seront disponibles sur l’interface : un bouton pour lancer une nouvelle partie, un pour déclarer forfait (affiché uniquement pendant la partie). Si un joueur réussi à aligne 3 signes un message de félicitation sera visible sur l’écran. Lorsqu’une partie se termine un tableau donnant les statistiques des deux joueurs s’affichera.
Règle du jeux
Les règles du morpions sont simples : -Le jeux contient 9 cases -Il y a 2 équipes (par exemple l'un choisis la croix, l'autre le rond) -Pour gagner aligner 3 même signe de votre équipe -Fin de la partie si un des joueurs cliquent sur "abandonner".
Le matériel
Ici nous utiliserons deux matrices de led 3*3 (ou une 6*6 avec 2couleurs différentes, si cela n'est pas possible je ferais moi même les différentes couleurs) Les leds seront groupés par 2 pour une case (pour 2 les signes différents),avec le câblage requis ainsi qu'une Raspberry pi pour faire le lien machine matrice. Le plateau sera fait au Fab'Lab de tel manière à ce que les cases soient bien distinctes. Un plateau de jeu de morpions contient 9 cases.
Séance 1
Partie électronique
Partie informatique
Début d'écriture du programme du jeux
En début de séance 2 on a:
Le joueur choisis un nombres pour pseudo et la partie commence:
__Bienvenue sur Morpion.led!__
choisissez votre numéro de joueur (1 ou 2):
Joueur numero: 1
Joueur numero : 2
L'affichage qui se fait parfaitement sur le terminal avec pour chaque case sa coordonnée.
| | X |
O | O | |
| X | |
Manque: La condition gagnante et ne pas pouvoir rejouer sur la même case.
Séance 2
Partie électronique
Partie informatique
Tout le programme en C fonctionne, le jeux se joue à 2. Pour la partie électronique les placements se font par coordonnées des cases avec (0;0) pour la première en haut à gauche. Le programme prend en compte toutes les conditions gagnantes et si un joueur veut replacer son pion sur une case déjà joué il lui renvoit un message d'erreur et lui demande de jouer ailleurs. Il y a aussi la possibilité de relancer une partie.
Voici une partie de l'affichage d'une fin de partie !
== TOUR 2 == Au joueur 1!
00
O | O | | Ici les cases ont pour coordonnées (0;0) | (0;1) | (0;2)
| | |
X | | |
Au joueur 2!
22
O | O | |
| | |
X | | X |
== TOUR 3 == Au joueur 1!
22
O | O | |
| | |
X | | X |
Veuillez jouer sur une case libre!
O | O | O |
| | |
X | | X |
La partie est finie!
Pour refaire une nouvelle partie taper 1!
Séance 3
Partie électronique
Arduino: Dans cette séance le câblage de l'Arduino avec la matrice a été effectué. Ainsi j'ai pu testé toutes les possibilités de cette matrice en y affichant diverse couleurs et formes grâce à la partie informatique.
Partie informatique
Arduino:
-Programmation de la matrice et pour l'instant l'initialisation éteint toutes les leds.
-Programmation de l'affichage du plateau de jeux ainsi que les pions. Ayant 2 leds différentes pour les afficher j'ai préféré allumer les deux d'une couleur différente pour une meilleure visibilité