コード例 #1
0
        //calculates the sum of a hand
        private int Sum(Hand hand)
        {
            bool have_ace = false;
            int  total    = 0;

            foreach (Card card in hand.getHand())
            {
                Card.CardNumber card_number = card.getCardNumber();
                if (card_number == Card.CardNumber.ACE)
                {
                    have_ace = true;
                }
                switch (card_number)
                {
                case Card.CardNumber.KING:
                case Card.CardNumber.QUEEN:
                case Card.CardNumber.JACK:
                    total += 10;
                    break;

                default:
                    total += ( int )card_number + 1;
                    break;
                }
            }
            //ace case
            if (have_ace)
            {
                if (total + ACE_MULTIPLIER <= 21)
                {
                    total += ACE_MULTIPLIER;
                }
            }
            return(total);
        }
コード例 #2
0
ファイル: HandUtility.cs プロジェクト: DylanConvery/Blackjack
        //generates a string which is used for finding the correct image to draw
        private List <string> genCardName()
        {
            List <string> names = new List <string>();

            foreach (Card c in hand.getHand())
            {
                StringBuilder name = new StringBuilder();

                int num = ( int )c.getCardNumber();
                switch (num)
                {
                case 0:
                    name.Append('a');                             //ace
                    break;

                case 10:
                    name.Append('k');                             //king
                    break;

                case 11:
                    name.Append('q');                             //queen
                    break;

                case 12:
                    name.Append('j');                             //jack
                    break;

                default:
                    name.Append(num + 1).ToString();                             //numerical values
                    break;
                }

                int suit = ( int )c.getCardSuit();
                switch (suit)
                {
                case 0:
                    name.Append('c');                             //club
                    break;

                case 1:
                    name.Append('h');                             //heart
                    break;

                case 2:
                    name.Append('s');                             //spade
                    break;

                case 3:
                    name.Append('d');                             //diamond
                    break;
                }

                name.Append(".png");
                names.Add(name.ToString());
            }
            return(names);
        }