public void Begin() { var userName = _massageFactory.LoginMesage(); var user = _playerManager.GetByUserName(userName); if (user == null) { var key = _playerManager.Add(new Player { Name = userName }); user = _playerManager.Get(key); } _massageFactory.PlayerStatisticsMessage(user); bool kartoti = true; while (kartoti) { Console.Clear(); var tema = SelectSubject(); var zodis = AtsitiktinisZodzioPasirinkimas(tema); if (zodis == null) { Console.WriteLine("Temoje nebėra žodžiu, ar norite rinktis kitą temą T/N"); } else { _hiddenWordManager = new HiddenWordManager(zodis); bool leidziamaSpeti = true; panaudotiZodziai.Add(zodis); _massageFactory.HangmanPictureMessage(0); Console.WriteLine(); Console.WriteLine(_hiddenWordManager.GetHiddedWordStructure()); while (leidziamaSpeti) { string spejimas = _massageFactory.WordInputMessage(); bool arSpetasZodis = ArSpetasZodis(spejimas); if (arSpetasZodis) { bool arTeisinga = ArZodisTeisingas(zodis.Text, spejimas); if (arTeisinga) { _massageFactory.WinGameMessage(zodis.Text); } else { _massageFactory.HangmanPictureMessage(gyvybiuKiekis); _massageFactory.LostGameMessage(zodis.Text); } leidziamaSpeti = false; } else { bool arBuvoSpeta = _hiddenWordManager.HiddenWord.IncorrectGuesses.Contains(spejimas); if (!arBuvoSpeta) { _hiddenWordManager.CheckLetter(spejimas); } if (_hiddenWordManager.HiddenWord.IncorrectGuesses.Count == gyvybiuKiekis) { _massageFactory.HangmanPictureMessage(gyvybiuKiekis); _massageFactory.LostGameMessage(zodis.Text); leidziamaSpeti = false; } else { Console.Clear(); _massageFactory.HangmanPictureMessage(_hiddenWordManager.HiddenWord.IncorrectGuesses.Count); _massageFactory.IncorrectLettersListMessage(_hiddenWordManager.HiddenWord.IncorrectGuesses); Console.WriteLine(_hiddenWordManager.GetHiddedWordStructure()); if (_hiddenWordManager.HiddenWord.HiddenLetterCount == 0) { _massageFactory.WinGameMessage(zodis.Text); leidziamaSpeti = false; } } } } } _playerManager.AddScoreBoard(GetScoreBoard(zodis, user.PlayerId)); kartoti = _massageFactory.RepeatGameMessage(); } }