public void DealInitialHands(IDeck deck, Dealer dealer, IPlayer player)
 {
     player.AddCardToHand(deck.DealTopCard(false));
     dealer.AddCardToHand(deck.DealTopCard(false));
     player.AddCardToHand(deck.DealTopCard(true));
     dealer.AddCardToHand(deck.DealTopCard(true));
 }
Пример #2
0
        private void AddMockCardToHand(Value value)
        {
            var mockCard1 = new Mock <ICard>();

            mockCard1.Setup(card => card.GetValue()).Returns(value);
            sut.AddCardToHand(mockCard1.Object);
        }
        internal PlayerAction InteractWithPlayer(IDeck deck, IPlayer player, Dealer dealer)
        {
            PlayerAction action;
            string       actionDisplay;

            do
            {
                action        = player.NextAction(dealer.GetHand());
                actionDisplay = GetActionMessage(player, action);
                DisplayMessage(actionDisplay);
                if (action == PlayerAction.Hit)
                {
                    ICard card = deck.DealTopCard(true);
                    player.AddCardToHand(card);
                    int score = player.GetHand().Score(true);
                    if (score > MAXSCORE)
                    {
                        action        = PlayerAction.Busted;
                        actionDisplay = GetActionMessage(player, action);
                        DisplayMessage(actionDisplay);
                    }
                    string scoreDisplay = GetScoreMessage(player);
                    DisplayMessage(scoreDisplay);
                    string handDisplay = GetHandMessage(player.GetHand(), true);
                    DisplayMessage(handDisplay);
                }
            } while (action != PlayerAction.Busted && action != PlayerAction.Stand);
            return(action);
        }
Пример #4
0
        public void DealCard(IPlayer player)
        {
            ICard card = Deck.GetACard();

            player.AddCardToHand(card);
        }