コード例 #1
0
        /// <summary>
        /// Hit method (deal a card)
        /// </summary>
        /// <param name="deck"></param>
        /// <param name="player"></param>
        private void hit(Deck deck, Player player)
        {
            //topcard of deck
            Card card = deck.getDeck()[0];

            //adds card to hand
            player.getHand().Add(card);
            //removes from deck
            deck.getDeck().Remove(card);
            //adds card's value to score
            int cardValue = card.getCardValue();

            player.increaseScore(cardValue);

            //add images
            if (player == computer)
            {
                Card computerCard = computer.getHand()[0];
                int  count        = computer.getHand().Count;
                computerCard = computer.getHand()[count - 1];
                PictureBox computerCardImage = computerCard.getImage();
                deck.addImage(computerCardImage, computerCard.getImgNum());
                //
                switch (count)
                {
                case 1:
                    computerFirstCard.Image = Properties.Resources.Back;
                    break;

                case 2:
                    computerSecondCard.Image = Properties.Resources.Back;
                    break;

                case 3:
                    computerThirdCard.Image = Properties.Resources.Back;
                    break;

                case 4:
                    computerFourthCard.Image = Properties.Resources.Back;
                    break;

                case 5:
                    computerFifthCard.Image = Properties.Resources.Back;
                    break;

                case 6:
                    computerSixthCard.Image = Properties.Resources.Back;
                    break;

                default:
                    break;
                }
            }
            else if (player == newPlayer)
            {
                Card playerCard = newPlayer.getHand()[0];
                int  count      = player.getHand().Count;
                playerCard = player.getHand()[count - 1];

                deck.addImage(playerCard.getImage(), playerCard.getImgNum());

                switch (count)
                {
                case 1:
                    playerFirstCard.Image = playerCard.getImage().Image;
                    break;

                case 2:
                    playerSecondCard.Image = playerCard.getImage().Image;
                    playerScoreLbl.Update();
                    playerSecondCard.Update();
                    break;

                case 3:
                    playerThirdCard.Image = playerCard.getImage().Image;
                    playerThirdCard.Update();
                    break;

                case 4:
                    playerFourthCard.Image = playerCard.getImage().Image;
                    playerFourthCard.Update();
                    break;

                case 5:
                    playerFifthCard.Image = playerCard.getImage().Image;
                    playerFifthCard.Update();
                    break;

                case 6:
                    playerSixthCard.Image = playerCard.getImage().Image;
                    playerSixthCard.Update();
                    break;

                default:
                    break;
                }
            }
        }