public static InitRoundViewModel GetInitRoundViewModel(Game game, List <GamePlayer> players, string isGameOver) { InitRoundViewModel initRoundViewModel = Mapper.Map <Game, InitRoundViewModel>(game); initRoundViewModel.Bots = new List <PlayerItem>(); foreach (GamePlayer player in players) { if (player.Player.Type == (int)PlayerType.Dealer) { initRoundViewModel.Dealer = Mapper.Map <GamePlayer, PlayerItem>(player); } if (player.Player.Type == (int)PlayerType.Human) { initRoundViewModel.Human = Mapper.Map <GamePlayer, PlayerItem>(player); } if (player.Player.Type == (int)PlayerType.Bot) { PlayerItem bot = Mapper.Map <GamePlayer, PlayerItem>(player); initRoundViewModel.Bots.Add(bot); } } return(initRoundViewModel); }
public async Task <InitRoundViewModel> InitRound(long gameId) { Game game = await _gameRepository.Get(gameId); List <GamePlayer> players = (await _gamePlayerRepository.GetAllForInitRound(gameId)).ToList(); GamePlayer human = players.Where(m => m.Player.Type == (int)PlayerType.Human).First(); GamePlayer dealer = players.Where(m => m.Player.Type == (int)PlayerType.Dealer).First(); string isGameOver = IsGameOver(human, dealer); InitRoundViewModel initRoundViewModel = CustomMapper.GetInitRoundViewModel(game, players, isGameOver); return(initRoundViewModel); }
public async Task <IHttpActionResult> InitRound(long gameId) { try { InitRoundViewModel initRoundViewModel = await _startGameService.InitRound(gameId); return(Ok(initRoundViewModel)); } catch (Exception ex) { string message = $"{ex.Source}|{ex.TargetSite}|{ex.StackTrace}|{ex.Message}"; _logger.Error(message); return(BadRequest(GameMessageHelper.GameLoadingError)); } }
public async Task <ActionResult> InitRound(long gameId) { try { InitRoundViewModel initRoundViewModel = await _startService.InitRound(gameId); return(View(initRoundViewModel)); } catch (Exception ex) { string message = $"{ex.Source}|{ex.TargetSite}|{ex.StackTrace}|{ex.Message}"; _logger.Error(message); return(RedirectToAction("Error", new { message = GameMessageHelper.GameLoadingError })); } }