Class Game

java.lang.Object
eu.flrkv.wwm.Game.Game

public class Game
extends java.lang.Object
Klasse eines Spiels
  • Field Summary

    Fields
    Modifier and Type Field Description
    private Question currentQuestion
    Aktuelle Frage als Objekt der Klasse Question
    private java.lang.Integer currentQuestionID
    ID der Frage in der Datenbank
    private int currentQuestionNumber
    Nummer der akteullen Frage (1-15)
    private int gameID
    Unique GameID
    private java.lang.String gameName
    Name des aktuellen Spiels
    private java.lang.String gamerTag
    InGame Name des aktuellen Spielers
    private QuestionController questionController
    Fragen Controller
    private java.lang.String usedJokers
    Verbleibende Joker (phone,audience,fifty) Komma separiert.
    private java.lang.String usedQuestions
    Alle benutzten Fragen als String Komma separiert.
  • Constructor Summary

    Constructors
    Constructor Description
    Game​(int pGameID)
    Konstruktor um ein bereits vorhandenes Spiel fortzuführen.
    Game​(java.lang.String pGameName, java.lang.String pGamerTag)
    Konstruktor um ein neues Spiel zu starten.
  • Method Summary

    Modifier and Type Method Description
    boolean addToHighscores​(boolean pBackToSecurityLevel)
    Fügt den Spielstand mit den derzeitigen Daten der Bestenliste hinzu
    boolean deleteGame()
    Löscht das aktuelle Spiel / den aktuellen Spielstand
    Question getCurrentQuestion()
    Gibt die aktuelle Frage zurück
    int getCurrentQuestionNumber()
    Gibt die Nummer der aktuellen Frage zurück.
    int getGameID()
    Gibt die aktuelle SpielID zurück
    java.lang.String getGameName()
    Gibt den Namen des aktuellen Spielstands zurück
    java.lang.String getGamerTag()
    Gibt den Namen des aktuellen Spielers zurück.
    java.lang.String[] getUsedJokersArray()
    Gibt ein String-Array mit allen genutzen Jokern zurück
    java.lang.String getUsedQuestions()
    Gibt alle bereits genutzten Fragen Komma-Separiert zurück
    boolean jokerIsUsed​(java.lang.String pJoker)
    Prüft ob ein Joker bereits eingesetzt wurde
    void lost()
    Spiel verloren Zeigt Dialogfenster mit den Spielstatistiken und speichert ggf. den Highscore.
    void nextQuestion​(boolean pFirst)
    Holt eine neue Frage, die in diesem Spiel noch nicht benutzt wurde und setzt diese als aktuelle Frage
    boolean saveGame()
    Speichert/Ãœberschreibt den aktuellen Spielstand mit den aktuellen Spieldaten
    void setCurrentQuestion​(Question pQuestion)
    Setzt das Attribut für die aktuelle Frage (Ändert nicht die angezeigte Frage!)
    private void setQuestion​(Question pQuestion, int pQuestionNumber)
    Setzt eine vorgegebene Frage als derzeitige Frage
    void setUsedQuestions​(java.lang.String usedQuestions)
    Setzt einen Komma-Separierten String mit FragenIDs als bereits genutzte Fragen
    void useJoker​(java.lang.String pJoker)
    Setzt einen Joker als eingesetzt

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • gameID

      private int gameID
      Unique GameID
    • gamerTag

      private java.lang.String gamerTag
      InGame Name des aktuellen Spielers
    • currentQuestionNumber

      private int currentQuestionNumber
      Nummer der akteullen Frage (1-15)
    • currentQuestionID

      private java.lang.Integer currentQuestionID
      ID der Frage in der Datenbank
    • usedJokers

      private java.lang.String usedJokers
      Verbleibende Joker (phone,audience,fifty) Komma separiert.
    • usedQuestions

      private java.lang.String usedQuestions
      Alle benutzten Fragen als String Komma separiert.
    • gameName

      private java.lang.String gameName
      Name des aktuellen Spiels
    • questionController

      private final QuestionController questionController
      Fragen Controller
    • currentQuestion

      private Question currentQuestion
      Aktuelle Frage als Objekt der Klasse Question
  • Constructor Details

    • Game

      public Game​(int pGameID) throws GameNotFoundException
      Konstruktor um ein bereits vorhandenes Spiel fortzuführen.
      Parameters:
      pGameID - Unique ID des Spiels, welches fortgeführt werden soll
      Throws:
      GameNotFoundException - falls der Spielstand nicht gefunden wurde
    • Game

      public Game​(java.lang.String pGameName, java.lang.String pGamerTag)
      Konstruktor um ein neues Spiel zu starten.
      Parameters:
      pGameName - Name des Spielstandes
      pGamerTag - Name des Spielers
  • Method Details

    • nextQuestion

      public void nextQuestion​(boolean pFirst)
      Holt eine neue Frage, die in diesem Spiel noch nicht benutzt wurde und setzt diese als aktuelle Frage
      Parameters:
      pFirst - Erste Frage (Falls vorher noch keine Frage gesetzt wurde)
    • setQuestion

      private void setQuestion​(Question pQuestion, int pQuestionNumber)
      Setzt eine vorgegebene Frage als derzeitige Frage
      Parameters:
      pQuestion - Zu setzende Frage
      pQuestionNumber - Fragennummer
    • getUsedQuestions

      public java.lang.String getUsedQuestions()
      Gibt alle bereits genutzten Fragen Komma-Separiert zurück
      Returns:
      Komma-Separierter String mit allen FragenIDs die bereits genutzt wurden
    • setUsedQuestions

      public void setUsedQuestions​(java.lang.String usedQuestions)
      Setzt einen Komma-Separierten String mit FragenIDs als bereits genutzte Fragen
      Parameters:
      usedQuestions - Komma-Separierter String mit allen FragenIDs die bereits genutzt wurden
    • getGameID

      public int getGameID()
      Gibt die aktuelle SpielID zurück
      Returns:
      SpielID als Integer
    • getGamerTag

      public java.lang.String getGamerTag()
      Gibt den Namen des aktuellen Spielers zurück.
      Returns:
      Name des Spielers als String
    • getGameName

      public java.lang.String getGameName()
      Gibt den Namen des aktuellen Spielstands zurück
      Returns:
      Name des Spiels als String
    • getCurrentQuestionNumber

      public int getCurrentQuestionNumber()
      Gibt die Nummer der aktuellen Frage zurück. Fragen von (1-15)
      Returns:
      Nummer der aktuellen Frage als Integer
    • getCurrentQuestion

      public Question getCurrentQuestion()
      Gibt die aktuelle Frage zurück
      Returns:
      Aktzuelle Frage in Form eines Question Objekts
    • setCurrentQuestion

      public void setCurrentQuestion​(Question pQuestion)
      Setzt das Attribut für die aktuelle Frage (Ändert nicht die angezeigte Frage!)
      Parameters:
      pQuestion - Objekt des Datentyps Question
    • getUsedJokersArray

      public java.lang.String[] getUsedJokersArray()
      Gibt ein String-Array mit allen genutzen Jokern zurück
      Returns:
      String-Array mit genutzen Jokern. Falls leer wird ein leeres Array zurückgegeben.
    • jokerIsUsed

      public boolean jokerIsUsed​(java.lang.String pJoker)
      Prüft ob ein Joker bereits eingesetzt wurde
      Parameters:
      pJoker - Zu überprüfender Joker
      Returns:
      Gibt true zurück falls der Joker bereits genutzt wurde
    • useJoker

      public void useJoker​(java.lang.String pJoker)
      Setzt einen Joker als eingesetzt
      Parameters:
      pJoker - Joker
    • lost

      public void lost()
      Spiel verloren Zeigt Dialogfenster mit den Spielstatistiken und speichert ggf. den Highscore. Löscht das Spiel
    • addToHighscores

      public boolean addToHighscores​(boolean pBackToSecurityLevel)
      Fügt den Spielstand mit den derzeitigen Daten der Bestenliste hinzu
      Parameters:
      pBackToSecurityLevel - Wenn true wird die letzte Sicherheitsstufe als Score gespeichert. Wenn false der bereits erspielte Geldbetrag
      Returns:
      Gibt true zurück sofern der Highscore erfolgreich gespeichert wurde
    • deleteGame

      public boolean deleteGame()
      Löscht das aktuelle Spiel / den aktuellen Spielstand
      Returns:
      Gibt true zurück wenn das Spiel erfolgreich gelöscht wurde
    • saveGame

      public boolean saveGame()
      Speichert/Ãœberschreibt den aktuellen Spielstand mit den aktuellen Spieldaten
      Returns:
      Gibt true zurück wenn das Spiel erfolgreich gespeichert wurde