sio:bloc2:2a:td1

Ceci est une ancienne révision du document !


TD1 : Escape game

Objectif : Concevoir et implémenter un système simplifié pour un escape game en mode console. Les joueurs devront résoudre des énigmes dans des salles thématiques pour s’échapper avant la fin du temps imparti.

  • Travail en binôme.
  • Langage : Java.

EscapeGamesalles: List<Salle>joueurs: List<Joueur>ajouterSalle(Salle): voiddemarrerPartie(Joueur, Salle): voidafficherClassement(): voidSallenom: Stringenigmes: List<Enigme>tempsLimite: intestTerminee: booleanajouterEnigme(Enigme): voidresoudreEnigme(String, String): booleanestTerminee(): booleanafficherEnigmesNonResolues(): voidtoString(): StringEnigmetitre: Stringdescription: StringcodeSolution: StringestResolue: booleanresoudre(String): booleanestResolue(): booleantoString(): StringJoueurpseudo: Stringscore: intsallesTerminees: List<Salle>ajouterSalleTerminee(Salle): voidafficherStatistiques(): voidClasse principaleGère les salles et les joueurs.Peut lancer une partie.Une énigme peut être :- Un code à deviner- Un objet à trouver- Une devinetteUne salle a :- Un temps limite (en minutes)- Plusieurs énigmes à résoudrecontient10..*enregistre10..*contient11..*a terminé10..*

🔹 Gestion des Énigmes

Une énigme a (attributs) :

  • Un titre et une description (affichés en console).
  • Un code solution (ex : “CLEF”, “1984”, “MIROIR”).
  • Un état (resolue ou non).

Méthodes :

  • resoudre(String tentative) : Compare la tentative du joueur au code solution.
  • toString() : Affiche l’énigme de manière lisible (sans spoiler la solution).

🔹 Gestion des Salles

Une salle a :

  • Un nom (ex : “La Bibliothèque Maudite”).
  • Une liste d’énigmes.
  • Un temps limite (en minutes, simulé en console).

Méthodes :

  • ajouterEnigme(Enigme) : Ajoute une énigme à la salle.
  • resoudreEnigme(int index, String reponse) : Tente de résoudre une énigme par son index.
  • estTerminee() : Retourne true si toutes les énigmes sont résolues.

🔹 Interaction en Console

Le programme doit permettre de :

  • Afficher les énigmes disponibles dans une salle.
  • Sélectionner une énigme (par numéro) et entrer une réponse.
  • Recevoir un feedback (ex : “🔓 Énigme résolue !” ou “❌ Mauvaise réponse”).
  • Passer à la salle suivante si toutes les énigmes sont résolues.
  • sio/bloc2/2a/td1.1756860591.txt.gz
  • Dernière modification : il y a 45 heures
  • de jcheron