public Game SetPlayerToStart(string gameName, string playerId) { object gameLock = GetGameLock(gameName); lock (gameLock) { Game game = GetGame(gameName); ValidateGame(game, StatusEnum.SETUP); Player player = game.Players.FirstOrDefault(p => p.Id == playerId); ValidatePlayer(player, StatusEnum.SETUP); player.Status = StatusEnum.PLAYING; if (game.Players.Count > 1 && !game.Players.Any(p => p.Status != StatusEnum.PLAYING)) { game.Status = StatusEnum.PLAYING; game.PlayerNameTurn = _shitheadService.ChooseFirstTurn(game.Players); } SaveGame(game); return(game); } }