public async Task <StartGameResponseViewItem> Start(string userId, int countBots) { IEnumerable <Card> deck = await _cardRepository.GetAll(); _deck = new Deck(deck); var game = new Game(); await _gameRepository.Add(game); _cache.SaveToCache(game.Id, _deck); List <Player> playersList = await GetPlayers(userId, game.Id, countBots); await StartGame(userId, game.Id, playersList); Player user = await _playerRepository.Get(userId); int cardLeft = _deck.CardsLeft(); List <Player> botPlayerList = await GetBotsFromGame(user.Id, game.Id); StartGameResponseViewItem response = await CreateStartView(user, game.Id, cardLeft, botPlayerList); return(response); }
// Good private void SaveToCache(string gameId, Deck deck) { _cache.SaveToCache(gameId, deck); }