Class GameEngine


  • public class GameEngine
    extends java.lang.Object
    • Constructor Summary

      Constructors 
      Constructor Description
      GameEngine​(java.lang.String pNomJoueur, int pModeJeu)
      Constructeur d'objets de la classe GameEngine
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      private void back​(Command pDirection)
      Permet de retourner en arrière.
      private void charge​(Command pCommand)
      Permet de charger le beamer.
      private void counterone()
      Procédure permettant d'incrémenter de 1 le nombre de requêtes qu'a effectué le joueur.
      private void createRooms()
      Crée toutes les rooms, initialise leurs images et lie leurs sorties.
      private void drop​(Command pCommand)
      Permet de lacher l'objet attrapé.
      private void eat​(Command pCommand)
      Pour manger un magiccookie ou un objet.
      private void endGame()
      Arret du jeu : affichage d'un message d'au revoir et arrêt de l'interface graphique.
      private java.lang.String endHour​(int pMinConseille)
      endHour pour calculer l'heure finale à partie de l'heure actuelle.
      private void enigmes()
      Permet d'afficher les énigmes présentes dans chaque pièce.
      private void goRoom​(Command pCommand)
      Essaye d'aller dans une direction.
      void interpretCommand​(java.lang.String pCommandLine)
      Prend une commande en paramètre et traite, exécute la commande.
      void inventaire()
      Permet d'afficher l'inventaire des items attrapés et mangés et de leur poids sous forme de liste.
      private void look()
      Permet d'afficher la description de la pièce courante et d'afficher le nombre de requêtes effectuées (timelimit)
      private void printHelp()
      Afficher des informations d'aide.
      private void printLocationInfo()
      Print location info Pour afficher la description de la piece courante dans laquelle se situe le joueur.
      private void printWelcome()
      Afficher le message de bienvenue au joueur avec toutes les informations nécessaires : - Présentation du jeu et objectif
      void setGUI​(UserInterface pUserInterface)
      SetGUI
      private void take​(Command pCommand)
      Permet de prendre un item.
      private void teleport​(Command pCommand)
      Teleport
      private void test​(Command pCommandFichier)
      Utilisation de fichiers de test .txt pour vérifier le bon fonctionnement du jeu.
      private boolean timelimit()
      Permet de compter le nombre de requetes effectuées par le joueur et d'alerter le joueur lorsqu'il a utilisé plus d'1/3 des commandes et d'arrêter le jeu lorsque le nombre maximal de requêtes autorisées est dépassé.
      private void win()
      Permet de vérifier si le joueur à gagné ou non et si oui d'afficher un message et d'arrêter le jeu.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • GameEngine

        public GameEngine​(java.lang.String pNomJoueur,
                          int pModeJeu)
        Constructeur d'objets de la classe GameEngine
        Parameters:
        pNomJoueur - (string)
        pModeJeu - (int)
    • Method Detail

      • printWelcome

        private void printWelcome()
        Afficher le message de bienvenue au joueur avec toutes les informations nécessaires : - Présentation du jeu et objectif. - Nombre de requêtes maximales (time limit) et temps maximal. - Pièce de départ et commandes.
      • printLocationInfo

        private void printLocationInfo()
        Print location info Pour afficher la description de la piece courante dans laquelle se situe le joueur.
      • createRooms

        private void createRooms()
        Crée toutes les rooms, initialise leurs images et lie leurs sorties. Déclaration des items, magiccookies ainsi que du lieu de départ.
      • interpretCommand

        public void interpretCommand​(java.lang.String pCommandLine)
        Prend une commande en paramètre et traite, exécute la commande.
        Parameters:
        pCommandLine - pour la commande saisie.
      • printHelp

        private void printHelp()
        Afficher des informations d'aide. Ici nous affichons du texte d'aide ainsi que la liste des mots commande.
      • goRoom

        private void goRoom​(Command pCommand)
        Essaye d'aller dans une direction. S'il y a une sortie, on entre dans la nouvelle pièce, sinon, on affiche un message d'erreur.
      • endGame

        private void endGame()
        Arret du jeu : affichage d'un message d'au revoir et arrêt de l'interface graphique.
      • back

        private void back​(Command pDirection)
        Permet de retourner en arrière. Vérifie également la présence de trapdoor et bloque le retour en arrière dans ce cas.
        Parameters:
        pDirection -
      • test

        private void test​(Command pCommandFichier)
        Utilisation de fichiers de test .txt pour vérifier le bon fonctionnement du jeu. Lecture du fichier et exécution des actions résultantes aux instructions du fichier.
        Parameters:
        pCommandFichier -
      • take

        private void take​(Command pCommand)
        Permet de prendre un item. Vérifie si l'item est bien présent dans la pièce avant de le prendre.
        Parameters:
        pCommand -
      • drop

        private void drop​(Command pCommand)
        Permet de lacher l'objet attrapé. Appelle les méthodes d'éxécution dans player et affichage.
        Parameters:
        pCommand -
      • look

        private void look()
        Permet d'afficher la description de la pièce courante et d'afficher le nombre de requêtes effectuées (timelimit)
      • inventaire

        public void inventaire()
        Permet d'afficher l'inventaire des items attrapés et mangés et de leur poids sous forme de liste. Affiche également le poids total du joueur + des items cumulés.
      • eat

        private void eat​(Command pCommand)
        Pour manger un magiccookie ou un objet.
        Parameters:
        pCommand - l'instruction saisie.
      • timelimit

        private boolean timelimit()
        Permet de compter le nombre de requetes effectuées par le joueur et d'alerter le joueur lorsqu'il a utilisé plus d'1/3 des commandes et d'arrêter le jeu lorsque le nombre maximal de requêtes autorisées est dépassé.
      • counterone

        private void counterone()
        Procédure permettant d'incrémenter de 1 le nombre de requêtes qu'a effectué le joueur. Permet d'éviter la diplication de code dans interpretCommand().
      • charge

        private void charge​(Command pCommand)
        Permet de charger le beamer.
        Parameters:
        pCommand - pour l'instruction saisie par le joueur.
      • teleport

        private void teleport​(Command pCommand)
        Teleport
        Parameters:
        pCommand - pour l'instruction saisie par le joueur.
      • enigmes

        private void enigmes()
        Permet d'afficher les énigmes présentes dans chaque pièce.
      • win

        private void win()
        Permet de vérifier si le joueur à gagné ou non et si oui d'afficher un message et d'arrêter le jeu. Prend en compte deux conditions : le nombre de requêtes ainsi que le temps passé sur le jeu.
      • endHour

        private java.lang.String endHour​(int pMinConseille)
        endHour pour calculer l'heure finale à partie de l'heure actuelle.
        Parameters:
        pMinConseille - un entier qui correspond au temps imparti en minutes.