/// <summary> /// Get status for dealer and player by end of turn /// </summary> private void FinishTurn() { DealerStatus = _gameCommands.GetDealerStatus(DealerCards.ToList()); Players = _gameCommands.GetPlayersStatuses(Players); Players = _turnCommands.GetEndTurnStatusForPlayers(Players, DealerStatus); RaisePropertyChanged("DealerStatus"); RoundStarted = false; }
/// <summary> /// Check if dealer should get cards or end turn /// </summary> private void DealerAction() { if (_turnCommands.CheckIfDealersTurn(Players.Select(x => x.PlayerStatus.Status).ToList())) { DealerTurnAction(); } if (_turnCommands.EndTurn(Players.ToList(), DealerCards.ToList())) { FinishTurn(); } }
/// <summary> /// Dealer reveal card and deals new card if handvalue is lower than 17 /// </summary> private void DealerTurnAction() { var dealerHasHiddenCard = DealerCards.Any(x => x.HideCard == true); if (dealerHasHiddenCard) { RevealHiddenDealerCard(); } while (_turnCommands.DealerDecision(_gameCommands.GetHandValue(DealerCards.ToList()))) { DealerCards.Add(_turnCommands.Deal()); } RaisePropertyChanged("CardsLeftInDeckCounter"); }