示例#1
0
        public static CardColorEnum SuitToColor(CardSuitEnum suit)
        {
            if (suit == CardSuitEnum.Club || suit == CardSuitEnum.Spade)
            {
                return(CardColorEnum.Black);
            }

            return(CardColorEnum.Red);
        }
示例#2
0
        /// <summary>
        /// Initializes a new instance of the <see cref="Card"/> class
        /// </summary>
        /// <param name="suit">Desire suit for this card</param>
        /// <param name="number">Desired number for this card</param>
        public Card(CardSuitEnum suit, int number)
        {
            if (number < 1 || number > 13)
            {
                throw new IndexOutOfRangeException("Invalid card number: " + number);
            }

            this.CardSuit   = suit;
            this.CardNumber = number;
        }
示例#3
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="includeJokers"></param>
        public Cards(Boolean includeJokers) : base()
        {
            m_IncludeJokers = includeJokers;

            if (includeJokers)
            {
                this.Add(new Card(CardRankEnum.Joker1, CardSuitEnum.Jokers));
                this.Add(new Card(CardRankEnum.Joker2, CardSuitEnum.Jokers));
            }

            for (CardSuitEnum suit = CardSuitEnum.Hearts; suit < CardSuitEnum.Jokers; suit++)
            {
                for (CardRankEnum rank = CardRankEnum.Ace; rank < CardRankEnum.Joker1; rank++)
                {
                    Card newCard = new Card(rank, suit);
                    this.Add(newCard);
                }
            }
        }
示例#4
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="suit"></param>
        /// <returns></returns>
        public List <Card> GetAllBySuit(CardSuitEnum suit)
        {
            List <Card> retVal = this.FindAll(x => x.Suit == suit);

            if (retVal != null)
            {
                retVal.Sort((x, y) =>
                {
                    return(x.Rank.CompareTo(y.Rank));
                });
            }

            if (retVal == null)
            {
                retVal = new List <Card>();
            }

            return(retVal);
        }
示例#5
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="suit"></param>
 /// <param name="value"></param>
 public Card(CardSuitEnum suit, int value)
 {
     Suit  = suit.ToString();
     Value = value;
 }
示例#6
0
 public Card(CardRankEnum rank, CardSuitEnum suit)
 {
     m_Rank = rank;
     m_Suit = suit;
 }
示例#7
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="suit"></param>
        /// <param name="rank"></param>
        /// <returns></returns>
        public Card GetBySuitAndRank(CardSuitEnum suit, CardRankEnum rank)
        {
            Card retVal = this.Find(x => x.Rank == rank && x.Suit == suit);

            return(retVal);
        }
示例#8
0
 /// <summary>
 /// Gets the correct color from the suit
 /// </summary>
 /// <param name="suit">Target suit</param>
 /// <returns>Correct color tint</returns>
 public Color GetCardColorFromSuit(CardSuitEnum suit)
 {
     return(this.NumberColors[(int)Helpers.SuitToColor(suit)]);
 }
 public Card(CardFaceEnum cardFace, CardSuitEnum cardSuit)
 {
     CardFace = cardFace;
     CardSuit = cardSuit;
 }
示例#10
0
 /// <summary>
 /// Initializes a new instance of the <see cref="Card"/> class
 /// </summary>
 /// <param name="b">Creates a new copy of the given card</param>
 public Card(Card b)
 {
     this.CardSuit   = b.CardSuit;
     this.CardNumber = b.CardNumber;
 }
示例#11
0
 /// <summary>
 /// Gets the correct suit prefab
 /// </summary>
 /// <param name="cardSuit">Desired suit</param>
 /// <returns>The card suit prefab</returns>
 public GameObject GetCardSuitPrefab(CardSuitEnum cardSuit)
 {
     return(this.CardSuitPrefabs[(int)cardSuit]);
 }