Ajout des directive
This commit is contained in:
@@ -1,5 +1,7 @@
|
||||
using System;
|
||||
|
||||
namespace MiniJeux.Games.Trash;
|
||||
|
||||
public class Pendu
|
||||
{
|
||||
public Pendu()
|
||||
@@ -34,7 +36,7 @@ public class Pendu
|
||||
|
||||
// Demander une lettre
|
||||
Console.Write("Propose une lettre : ");
|
||||
var infoLettre = Console.ReadLine();//.KeyChar;
|
||||
var infoLettre = Console.ReadLine();
|
||||
|
||||
var lettre = infoLettre[0];
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
namespace MiniJeux.Games.Trash;
|
||||
|
||||
public class Ppc
|
||||
{
|
||||
private static readonly Dictionary<string, int> Scores = new Dictionary<string, int>()
|
||||
@@ -1,70 +1,6 @@
|
||||
using System;
|
||||
using System.Runtime.CompilerServices;
|
||||
|
||||
class Program()
|
||||
class Program()
|
||||
{
|
||||
private static readonly Dictionary<string, int> Scores = new Dictionary<string, int>()
|
||||
{
|
||||
{"joueur", 0},
|
||||
{"ordi", 0}
|
||||
};
|
||||
|
||||
|
||||
|
||||
public static void Main()
|
||||
{
|
||||
// new Ppc();
|
||||
new Pendu();
|
||||
// Console.WriteLine("Bienvenue dans ");
|
||||
// Console.WriteLine("✊✋✌️ Pierre-Papier-Ciseaux !");
|
||||
// Console.WriteLine("Premier à 3 points gagne !");
|
||||
// PierrePapierCiseaux();
|
||||
|
||||
// // Résultat final
|
||||
// Console.WriteLine($"\n{(Scores["joueur"] == 3 ? "🎉 TU AS GAGNÉ !" : "😢 L\'ordinateur a gagné...")}");
|
||||
// Console.WriteLine($"Score final : {Scores["joueur"]} - {Scores["ordi"]}");
|
||||
}
|
||||
|
||||
|
||||
|
||||
private static void PierrePapierCiseaux()
|
||||
{
|
||||
var random = new Random();
|
||||
var choix_possibles = new[] { "pierre", "papier", "ciseaux" };
|
||||
|
||||
while (Scores["joueur"] < 3 && Scores["ordi"] < 3)
|
||||
{
|
||||
Console.WriteLine($"\nScore : Toi {Scores["joueur"]} - {Scores["ordi"]} Ordinateur");
|
||||
Console.WriteLine("Choisis (pierre, papier, ciseaux) : ");
|
||||
var joueur = Console.ReadLine();
|
||||
|
||||
if (!choix_possibles.Contains(joueur?.ToLower()))
|
||||
{
|
||||
Console.WriteLine("❌ Choix invalide !");
|
||||
continue;
|
||||
}
|
||||
|
||||
|
||||
var ordi = random.GetItems(choix_possibles, 1).FirstOrDefault();
|
||||
Console.WriteLine($"🤖 L'ordinateur a choisi : {ordi}");
|
||||
|
||||
// Déterminer le gagnant
|
||||
if (joueur == ordi)
|
||||
{
|
||||
Console.WriteLine("✨ Égalité !");
|
||||
}
|
||||
else if ((joueur == "pierre" && ordi == "ciseaux") ||
|
||||
(joueur == "papier" && ordi == "pierre") ||
|
||||
(joueur == "ciseaux" && ordi == "papier"))
|
||||
{
|
||||
Console.WriteLine("✅ Tu gagnes cette manche !");
|
||||
Scores["joueur"] += 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
Console.WriteLine("❌ L'ordinateur gagne cette manche !");
|
||||
Scores["ordi"] += 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
21
MiniJeux/Tests/MiniJeux.Test/ReadMe.md
Normal file
21
MiniJeux/Tests/MiniJeux.Test/ReadMe.md
Normal file
@@ -0,0 +1,21 @@
|
||||
# But du jeu
|
||||
|
||||
## 1. Utiliser le projet MiniJeuBourin pour:
|
||||
|
||||
* Créer une interface (IActionPpc) commune pour les `actions` (pierre, papier, ciseaux) (Name, bool ToWin(other))
|
||||
* Implémenter les classes `actions` en utilisant TDD.
|
||||
* Créer une factory pour le choix auto de l'ordinateur
|
||||
* Créer une autre factory pour faciliter le choix de l'utilisateur grace à des nombres (1:pierre,2:papier...)
|
||||
* Implémenter le Program pour mettre en place le jeu.
|
||||
|
||||
## 2. Les Mocks dans les tests
|
||||
|
||||
* Utiliser FakeItEasy pour simuler l'entrée/sortie dans la console
|
||||
* Modifier les tests existant
|
||||
|
||||
## 3. Ajouter un 2eme jeu *Le Pendu*
|
||||
|
||||
* Ajouter une interface commune pour tous les jeux (IGame (Name, Start, Stop))
|
||||
* Ajouter une classe `PierrePapierCiseaux` à la solution en TDD en implémentant `IGame`.
|
||||
* Ajouter le jeu *LePendu* à la solution en TDD en implémentant `IGame`.
|
||||
* Création d'un menu pour séléctionner le jeu (doit etre auto !)
|
||||
Reference in New Issue
Block a user