public static void Main() { var playerCount = GameParts.ResolvePlayerCount(); var players = GameParts.ResolvePlayers(playerCount); var game = new Game.Game(players); game.Start(); }
public void Start() { while (true) { if (!players.Any()) { GameParts.Tie(); } for (var index = 0; index < players.Count; index++) { var player = players[index]; currentRound += 1; player.CountOfAttempts += 1; if (player.CountOfAttempts == GameConstants.MaximumAttempts) { players.Remove(player); continue; } if (player.CanMakeTurn) { var guess = player.MakeGuess(); if (guess == FruitBasket.Weight) { GameParts.Win(player); } else { player.RoundToSkip = GameHelper.CalculateRoundsToSkip(guess); } } else { player.RoundToSkip -= 1; } } } }