def play_game(self): """Playing the game.""" announcer = Announcer() diff = announcer.display_supported_difficulties() lang = announcer.ask_for_language() self.read_from_file(announcer.difficulty[diff][1][0], announcer.difficulty[diff][1][1], lang) chosen_word = self.choose_word() hidden_word = self.hidden_word(chosen_word) won = False print("The word is: {}\n".format(" ".join(hidden_word))) while self.tries > 0 and not won: announcer.display_dashed_word() inp = announcer.ask_for_input() while self.letter_has_been_used(inp): print("You already used letter: '{}'".format(inp)) inp = self.ask_for_input() self.used_letters.append(inp) print("Used letters: {}\n".format(sorted(self.used_letters))) if self.right_guess(chosen_word, hidden_word, inp): announcer.right_guess_feedback(inp, hidden_word) else: announcer.wrong_guess_feedback(inp, hidden_word) announcer.tries -= 1 # Check if game has been won or not. if announcer.game_over_won(hidden_word): won = True elif announcer.tries == 0: announcer.game_over_lost(chosen_word) exit()