Package it.unicam.cs.pa.mastermind.ui
Interface StartView
-
- All Known Implementing Classes:
ConsoleStartView
public interface StartView
Responsabilità: fornire agli utenti fisici coinvolti nel gioco l'interazione per poter iniziare nuove partite.- Author:
- Francesco Pio Stelluti, Francesco Coppola
-
-
Method Summary
Modifier and Type Method Description int
askNewAttempts(int lowTres)
Gestione dell'interazione con l'utente fisico per ottenere un nuovo valore relativo al numero di tentativi utili all'interno del gioco.int
askNewLength(int lowTres, int highTres)
Gestione dell'interazione con l'utente fisico per ottenere un nuovo valore relativo alla lunghezza delle sequenze impiegate nel gioco.boolean
askNewLengthsAndAttempts()
Gestione dell'interazione con l'utente fisico circa le decisioni per l'impostazione di nuovi valori di lunghezza delle sequenze e di numero di tentativi per un nuovo match.StartupSettings
askNewStartupSettings()
Gestione dell'interazione con l'utente fisico circa le decisioni per l'inizio di un nuovo match o meno dopo che uno è stato concluso.void
badEnding(java.lang.String reason)
Gestione anticipata della conclusione dell'intero gioco, richiamata ad esempio per il sollevamento di errori importanti.void
ending()
Gestione della conclusione dell'intero gioco dopo la fine di ogni singola partita.java.lang.String
getPlayerName(PlayerFactoryRegistry registry, boolean isBreaker)
Gestione dell'interazione dell'utente fisico per la scelta della particolare implementazione dei giocatori che verranno coinvolti nella nuova partita.default BreakerFactory
setupBreaker(BreakerFactoryRegistry registry)
Gestione dell'interazione con l'utente fisico circa la particolare implementazione diCodeBreaker
da impiegare nel gioco.default MakerFactory
setupMaker(MakerFactoryRegistry registry)
Gestione dell'interazione con l'utente fisico circa la particolare implementazione diCodeMaker
da impiegare nel gioco.void
showLogo()
Gestione di interazione con l'utente fisico per mostrare il logo di gioco.void
showNewMatchStarting()
Gestione dell'interazione con l'utente fisico circa l'inizio di un nuovo match
-
-
-
Method Detail
-
setupMaker
default MakerFactory setupMaker(MakerFactoryRegistry registry)
Gestione dell'interazione con l'utente fisico circa la particolare implementazione diCodeMaker
da impiegare nel gioco.- Parameters:
registry
- da cui recuperare le informazioni- Returns:
- MakerFactory per la generazione di nuovi giocatori
CodeMaker
-
setupBreaker
default BreakerFactory setupBreaker(BreakerFactoryRegistry registry)
Gestione dell'interazione con l'utente fisico circa la particolare implementazione diCodeBreaker
da impiegare nel gioco.- Parameters:
registry
- da cui recuperare le informazioni- Returns:
- BreakerFactory per la generazione di nuovi giocatori
CodeBreaker
-
ending
void ending()
Gestione della conclusione dell'intero gioco dopo la fine di ogni singola partita.
-
badEnding
void badEnding(java.lang.String reason)
Gestione anticipata della conclusione dell'intero gioco, richiamata ad esempio per il sollevamento di errori importanti.- Parameters:
reason
- da presentare all'utente fisico
-
askNewStartupSettings
StartupSettings askNewStartupSettings()
Gestione dell'interazione con l'utente fisico circa le decisioni per l'inizio di un nuovo match o meno dopo che uno è stato concluso.- Returns:
- StartupSettings contenente informazioni utili per iniziare o meno nuovi match
-
showNewMatchStarting
void showNewMatchStarting()
Gestione dell'interazione con l'utente fisico circa l'inizio di un nuovo match
-
askNewLength
int askNewLength(int lowTres, int highTres)
Gestione dell'interazione con l'utente fisico per ottenere un nuovo valore relativo alla lunghezza delle sequenze impiegate nel gioco.- Parameters:
lowTres
- limite inferiore al valore da sceglierehighTres
- limite superiore al valore da scegliere- Returns:
- int valore scelto
-
askNewAttempts
int askNewAttempts(int lowTres)
Gestione dell'interazione con l'utente fisico per ottenere un nuovo valore relativo al numero di tentativi utili all'interno del gioco.- Parameters:
lowTres
- limite inferiore al valore da scegliere- Returns:
- int valore scelto
-
getPlayerName
java.lang.String getPlayerName(PlayerFactoryRegistry registry, boolean isBreaker)
Gestione dell'interazione dell'utente fisico per la scelta della particolare implementazione dei giocatori che verranno coinvolti nella nuova partita.- Parameters:
registry
- registro contenente le informazioni sulle classiPlayerFactory
relative alle implementazioni dei giocatori.isBreaker
- flag che indica se la scelta è relativa ad una factory finalizzata alla generazione di un giocatoreCodeBreaker
o meno.- Returns:
- String rappresentante l'implementazione del giocatore scelta per la nuova partita.
-
askNewLengthsAndAttempts
boolean askNewLengthsAndAttempts()
Gestione dell'interazione con l'utente fisico circa le decisioni per l'impostazione di nuovi valori di lunghezza delle sequenze e di numero di tentativi per un nuovo match.- Returns:
- boolean volontà dell'utente fisico di decidere nuove impostazioni per un nuovo match.
-
showLogo
void showLogo()
Gestione di interazione con l'utente fisico per mostrare il logo di gioco.
-
-