예제 #1
0
        /// <summary>
        /// Set hidden card to true
        /// </summary>
        private void RevealHiddenDealerCard()
        {
            var hiddenCard = DealerCards.Where(x => x.HideCard == true).ToList();

            foreach (var card in hiddenCard)
            {
                DealerCards.Remove(card);
                card.HideCard = false;
                DealerCards.Add(card);
            }
        }
예제 #2
0
        /// <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");
        }
예제 #3
0
        /// <summary>
        /// Deal card by start of new round
        /// </summary>
        private void RoundStartDealCards()
        {
            foreach (var player in Players)
            {
                player.PlayerCards.Clear();
                player.PlayerCards.Add(_turnCommands.Deal());
                player.PlayerCards.Add(_turnCommands.Deal());
                player.PlayerStatus.Status = "Ready";
            }

            DealerCards.Add(_turnCommands.Deal());
            DealerCards.Add(_turnCommands.DealHidden());
            RaisePropertyChanged("CardsLeftInDeckCounter");
            RoundStarted = true;
        }
        public void AddCardToDealerHand(Card card)
        {
            if (card != null)
            {
                DealerCards.Add(card);
                if (DealerCards.Count() >= 2)
                {
                    DealerHand = new BlackjackHand(DealerCards);

                    if (DealerHand.IsBlackjack || DealerHand.Score == 21)
                    {
                        DealerHas21 = true;
                    }
                }
            }
        }