internal void TwoCardsEqualOperator(CardSuiteEnum suite1, CardValueEnum value1, CardSuiteEnum suite2, CardValueEnum value2) { var newCard1 = new Card(suite1, value1); var newCard2 = new Card(suite2, value2); Assert.True(newCard1 == newCard2); }
internal void TwoCardsAreEqual(CardSuiteEnum suite1, CardValueEnum value1, CardSuiteEnum suite2, CardValueEnum value2) { var newCard1 = new Card(suite1, value1); var newCard2 = new Card(suite2, value2); Assert.True(newCard1.Equals(newCard2)); }
internal void TwoCardsValuesAndSuitesAreNotEqual(CardSuiteEnum suite1, CardValueEnum value1, CardSuiteEnum suite2, CardValueEnum value2) { var newCard1 = new Card(suite1, value1); var newCard2 = new Card(suite2, value2); Assert.False(newCard1.Equals(newCard2)); }
public Card(char rank, char suit) { CardValueEnum _rank = rankParseLookup[rank]; SuitEnum _suit = suitParseLookup[suit]; _card = (CardEnum)((int)_suit + (int)_rank); if (_suit == SuitEnum.Unknown || _rank == CardValueEnum.Unknown) { throw new ArgumentException("Hand is not correctly formatted. Value: " + rank + " Suit: " + suit); } }
private static CardValueEnum[] initRankParseLookup() { CardValueEnum[] ranks = new CardValueEnum[128]; ranks['A'] = CardValueEnum._A; ranks['a'] = CardValueEnum._A; ranks['K'] = CardValueEnum._K; ranks['k'] = CardValueEnum._K; ranks['Q'] = CardValueEnum._Q; ranks['q'] = CardValueEnum._Q; ranks['J'] = CardValueEnum._J; ranks['j'] = CardValueEnum._J; ranks['T'] = CardValueEnum._T; ranks['t'] = CardValueEnum._T; for (int i = 2; i <= 9; i++) { ranks[i.ToString()[0]] = (CardValueEnum)i; } return(ranks); }
public static Card GetCardFromIntValue(int value) { //Sanity check if (value >= 52 || value <= -1) { //Because card is a struct we cant return null, //however there is a property isEmpty that is true when this method fails return(new Card()); } var suit = (int)(value / 13); var rank = value % 13; //suit starts at zero and SuitEnum starts at 1 SuitEnum suitValue = (SuitEnum)((suit + 1) << 4); //rank starts at zero and CardValueEnum starts at 2 CardValueEnum rankValue = (CardValueEnum)rank + 2; return(new Card(suitValue, rankValue)); }
private Card(CardValueEnum rank, SuitEnum suit) { CardEnum = GetCardEnum(rank, suit); }
private Card(SuitEnum suit, CardValueEnum rank) { _card = (CardEnum)((int)suit + (int)rank); }
internal static CardEnum GetCardEnum(CardValueEnum rank, SuitEnum suit) { return((CardEnum)((int)suit * 13 + (int)rank)); }
public Card(CardSuiteEnum suite, CardValueEnum value) { Type = suite; Value = value; }
internal CardWarGame(CardValueEnum cardValue, CardColorEnum cardColor) : base(cardValue, cardColor) { }
protected Card(CardValueEnum cardValue, CardColorEnum cardColor) { this.cardValue = cardValue; this.cardColor = cardColor; }
private static CardValueEnum[] initRankParseLookup() { CardValueEnum[] ranks = new CardValueEnum[128]; ranks['A'] = CardValueEnum._A; ranks['a'] = CardValueEnum._A; ranks['K'] = CardValueEnum._K; ranks['k'] = CardValueEnum._K; ranks['Q'] = CardValueEnum._Q; ranks['q'] = CardValueEnum._Q; ranks['J'] = CardValueEnum._J; ranks['j'] = CardValueEnum._J; ranks['T'] = CardValueEnum._T; ranks['t'] = CardValueEnum._T; for (int i = 2; i <= 9; i++) { ranks[i.ToString()[0]] = (CardValueEnum)i; } return ranks; }