Class ConsoleGameView

  • All Implemented Interfaces:
    Observer

    public class ConsoleGameView
    extends GameView
    Implementazione di una vista con interazione via console della classe GameView.
    Author:
    Francesco Pio Stelluti, Francesco Coppola
    • Constructor Summary

      Constructors 
      Constructor Description
      ConsoleGameView()
      Inizializzazione della vista con un FilterInputStream che non porta alla chiusura di System.in all'interno del suo metodo close().
    • Method Summary

      Modifier and Type Method Description
      void endingScreen​(java.lang.String gameEndingMessage, java.util.List<ColorPegs> seqToGuess)
      Interazione con l'utente fisico per la terminazione di una partita
      java.util.List<java.lang.Integer> getIndexSequence​(int seqLength, boolean isBreaker)
      Interazione con l'utente fisico per poter ottenere gli indici associati ai diversi valori di ColorPegs.
      void showGame​(BoardModel o)
      Interazione con l'utente fisico per mostrare la situazione di gioco.
      void update​(Observable o)
      Lo stato dell'oggetto si aggiorna grazie a oggetti BoardModel e oggetti SingleMatch.
      • Methods inherited from class java.lang.Object

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

      • ConsoleGameView

        public ConsoleGameView()
        Inizializzazione della vista con un FilterInputStream che non porta alla chiusura di System.in all'interno del suo metodo close().
    • Method Detail

      • getIndexSequence

        public java.util.List<java.lang.Integer> getIndexSequence​(int seqLength,
                                                                  boolean isBreaker)
        Description copied from class: GameView
        Interazione con l'utente fisico per poter ottenere gli indici associati ai diversi valori di ColorPegs. Se il valore restituito contiene l'Integer 0 è stata rappresentata la volontà di un giocatore CodeBreaker di arrendersi.
        Specified by:
        getIndexSequence in class GameView
        Parameters:
        seqLength - la lunghezza della sequenza di cui si vogliono ottenere indici
        isBreaker - flag che indica se la sequenza di indici interi da ottenere si riferisce alla sequenza da indovinare o meno
        Returns:
        List contenente gli indici interi associati all'enum ColorPegs
      • endingScreen

        public void endingScreen​(java.lang.String gameEndingMessage,
                                 java.util.List<ColorPegs> seqToGuess)
        Description copied from class: GameView
        Interazione con l'utente fisico per la terminazione di una partita
        Specified by:
        endingScreen in class GameView
        Parameters:
        gameEndingMessage - messaggio che comunica all'utente fisico l'esito
        seqToGuess - sequenza da indovinare dal gioco, da mostrare all'utente fisico
      • showGame

        public void showGame​(BoardModel o)
        Description copied from class: GameView
        Interazione con l'utente fisico per mostrare la situazione di gioco.
        Specified by:
        showGame in class GameView
        Parameters:
        o - plancia di gioco da mostrare
      • update

        public void update​(Observable o)
        Lo stato dell'oggetto si aggiorna grazie a oggetti BoardModel e oggetti SingleMatch.