public void ListWordsOnlyWithHints(WordsOperator wordsOperator, List <string> guessedLetters) { Console.WriteLine(wordsOperator.CollectedWordsFromCrossword.Count + " words"); Console.WriteLine(); var counter = 0; var revealedCharacters = string.Empty; var lastIndexOfguessedLetters = guessedLetters.Count - 1; bool switcher = true; var listOfUpdatedWords = new List <string>(); foreach (var word in wordsOperator.CollectedWordsFromCrossword) { if (counter == 0 || counter == 1) { revealedCharacters = Regex.Replace(word, wordsOperator.RevealGuessedLetters(guessedLetters), GlobalConstants.SpecificSymbolToReplaceNull); counter++; Console.WriteLine(1 + " " + word.Count() + " letters" + " " + revealedCharacters); } else { revealedCharacters = Regex.Replace(word, wordsOperator.RevealGuessedLetters(guessedLetters), GlobalConstants.SpecificSymbolToReplaceNull); Console.WriteLine(counter.ToString() + " " + word.Count() + " letters" + " " + revealedCharacters); counter++; } listOfUpdatedWords.Add(revealedCharacters); } if (!listOfUpdatedWords.Any(x => x.Contains(guessedLetters[lastIndexOfguessedLetters]))) { Counter.CounterOfWrongAnswers(); } }
public bool ShowEndScreen(WordsOperator wordsOperator, List <string> guessedLetters) { var containsSymbol = true; var revealedCharacters = string.Empty; var revealedWords = new List <string>(); foreach (var word in wordsOperator.CollectedWordsFromCrossword) { revealedCharacters = Regex.Replace(word, wordsOperator.RevealGuessedLetters(guessedLetters), GlobalConstants.SpecificSymbolToReplaceNull); revealedWords.Add(revealedCharacters); } foreach (var word in revealedWords) { if (word.Contains(GlobalConstants.SpecificSymbolToReplaceNull)) { return(!containsSymbol); } } if (containsSymbol) { var score = (wordsOperator.CollectedWordsFromCrossword.Count * 1000) / Counter.ReturnWrongAnswers(); Console.Clear(); Console.WriteLine(); Console.WriteLine(); Console.WriteLine(); Console.WriteLine(); Console.Write(" You've managed to solve {0} words with {1} wrong guesses!", wordsOperator.CollectedWordsFromCrossword.Count, Counter.ReturnWrongAnswers()); Console.WriteLine(); Console.WriteLine(" Your score is: {0}", score); Console.WriteLine(); Console.WriteLine(); Console.WriteLine(); Console.WriteLine(); Console.WriteLine(); } return(containsSymbol); }