Jeu de carte "la bataille" dans le cadre du cours Java/UPMC
Le jeu se compile avec la commande mvn compile
.
Vous pouvez lancer une partie avec mvn exec:java -Dexec.mainClass="upmc.game.Bataille"
- Le début de l'énoncé du TP se trouve à la fin du cours 1
- En plus, on vous demande de proposer un mode interactif dans lequel :
- Le système indique quelle joueur doit jouer.
- L'utilisateur peut décider de tirer une carte (simplement en appuyant sur "enter").
- Proposer un menu à 2 entrées : (1) Tirer la prochaine carte (2) Quitter.
- Permettez aux deux joueurs d'entrer leurs noms.
- Proposer un mode où un joueur peut jouer contre un ordinateur.
- Rendre le projet le plus ergonomique et soigné possible.
- Étendez les règles à votre sauce pour rendre le tout plus intéressant.
- Faites un rapport d'une page maximum pour expliquer les nouvelles règles implémentées.
- Veuillez à respecter la grille d'évaluation.
La date de rendu est sur le site du cours.
- Lire le code de l'interface
LecturePseudo
fournie. Elle indique que les classes qui implémenteront cette interface permettent de lire le pseudo d'un joueur. - Implémenter cette interface avec les classes
LectureConsole
etLectureFichier
. Elles permettent de lire respectivement les pseudos d'un fichier et de la console. - La classe
LectureFichier
demandera à l'utilisateur le nom d'un fichier à lire. Dans ce fichier, il y aura les pseudos utilisateurs à raison d'un par ligne. - Ensuite vous ajoutez une classe
MenuPseudo
qui propose une méthodepublic LecturePseudo modeLecturePseudo()
. Elle propose un menu dans lequel l'utilisateur peut choisir de quelles manières il veut lire les pseudos: via un fichier ou via la console. La méthode renvoie la classe correspondante (i.e.LectureConsole
ouLectureFichier
): vu qu'elles implémentent toutes deuxLecturePseudo
, on peut juste les manipuler viaLecturePseudo
. Un exemple:
LecturePseudo lecturePseudo = menu.modeLecturePseudo();
ArrayList<String> pseudos = lecturePseudo.lirePseudo();
...
On peut utiliser lirePseudo
sur LecturePseudo
de manière générique.
- Utiliser
MenuPseudo
dans votre méthodemain
principale.
La date de rendu est sur le site du cours.
Synchroniser un fork avec son répertoire courant:
git remote add upstream https://github.com/ptal/la-bataille.git
git fetch upstream
git checkout master
git merge upstream/master
Source: synchroniser un fork