public void Run() { bool continua = true; while (continua) { _uiHandler.WriteMessage("- MATCH GAME -"); _uiHandler.WriteMessage("La parola è: "); string randomWord = _uiHandler.WordRepository.GetRandomWord(); _uiHandler.WriteMessage(randomWord); _uiHandler.WriteMessage("Inserisci un anagramma:"); string answer = _uiHandler.AskForString(); if (_uiHandler.WordRepository.IsAnagram(randomWord, answer)) { _uiHandler.WriteMessage("Bravo"); } else { _uiHandler.WriteMessage("Peccato, risposta sbagliata"); } _uiHandler.WriteMessage("Vuoi continuare? (s/n)"); string continuare = _uiHandler.AskForString(); continua = (continuare == "s"); } }
static IGameplay SelectGameplay(List <IGameplay> gameplays, IUIHandler handler) { bool sensedMode = false; int indexOfSelectedMode = 0; List <string> gameplayCodes = new List <string>(); foreach (IGameplay gameplay in gameplays) { gameplayCodes.Add(gameplay.Code); } while (!sensedMode) { string selectedMode = handler.AskForString($"Selezionare la modalità immettendo il codice corrispondente: ").ToLower(); sensedMode = (gameplayCodes.Contains(selectedMode)) ? true : false; if (sensedMode) { indexOfSelectedMode = gameplayCodes.IndexOf(selectedMode); handler.WriteStringToUI($"Modalità scelta: {gameplays[indexOfSelectedMode].Name}."); } else { handler.WriteStringToUI($"Modalità scelta ({selectedMode}) non valida."); } } return(gameplays[indexOfSelectedMode]); }
public void Run(IUIHandler uiHandler) { for (int i = 0; i < _rounds; i++) { uiHandler.WriteMessage(); uiHandler.WriteMessage($"Turno { i + 1 }"); uiHandler.WriteMessage("La parola è..."); string word = _wordsRepository.GetRandomWord(5); uiHandler.WriteMessage(word.ToUpper()); uiHandler.WriteMessage(); uiHandler.WriteMessage("GO!!!!"); DateTime startTime = DateTime.Now; DateTime?endTime = null; do { string candidateWord = uiHandler.AskForString(); if (_wordsRepository.IsAnagram(word, candidateWord)) { endTime = DateTime.Now; uiHandler.WriteMessage($"Giusto! { candidateWord } è un anagramma di { word }"); break; } else { uiHandler.WriteMessage($"Non è corretto! Ti restano { TimeLeft(startTime) } secondi"); } }while (!TimeIsOver(startTime)); int roundPoints = CalculateRoundPoints(startTime, endTime); uiHandler.WriteMessage($"Turno {i + 1} terminato. Hai conquistato { roundPoints } punti e in totale sei a { _points }"); uiHandler.WriteMessage(); uiHandler.AskForString("(invio per iniziare il prossimo turno)"); } uiHandler.WriteMessage(); uiHandler.WriteMessage($"Il gioco è terminato. Hai totalizzato { _points } punti"); }
public void Run() { bool continua = true; while (continua) { _uiHandler.WriteMessage("- PRACTICE GAME -"); _uiHandler.WriteMessage("Inserisci una parola di prova"); string myWord = _uiHandler.AskForString(); var anagrams = _uiHandler.WordRepository.GetAnagrams(myWord); foreach (var anag in anagrams) { _uiHandler.WriteMessage(anag); } _uiHandler.WriteMessage("Vuoi continuare? (s/n)"); string continuare = _uiHandler.AskForString(); continua = (continuare == "s"); } }
public void Run(IUIHandler uiHandler) { do { uiHandler.Clear(); string word = uiHandler.AskForString("Inserisci una parola di cui vuoi conoscere gli anagrammi:"); var anagrams = _words.GetAnagrams(word); uiHandler.WriteMessage("Gli anagrammi trovati sono:"); foreach (var anagram in anagrams) { uiHandler.WriteMessage($"\t{anagram}"); } }while (AnotherMatch(uiHandler)); uiHandler.WriteMessage("Game over"); }
private bool AnotherMatch(IUIHandler uiHandler) { string choice = uiHandler.AskForString("Vuoi provare un'altra parola? (S/N)"); return("S".Equals(choice, StringComparison.InvariantCultureIgnoreCase)); }