public static int CompareCardList(List <Card> _CardListA, List <Card> _CardListB) { CardTypeCaculator cardTypeA = new CardTypeCaculator(_CardListA); CardTypeCaculator cardTypeB = new CardTypeCaculator(_CardListB); cardTypeA.iCardType = cardTypeA.CalcCardType(); cardTypeB.iCardType = cardTypeB.CalcCardType(); int iRet = 0; if (cardTypeA.iCardType > cardTypeB.iCardType) { iRet = 1; } else if (cardTypeA.iCardType < cardTypeB.iCardType) { iRet = 2; } else if (cardTypeA.iCardType == cardTypeB.iCardType) { if (cardTypeA.iCardType == CardType.StraightFlush) { iRet = CompareHighCard(cardTypeA.iHighCard, cardTypeB.iHighCard); } else if (cardTypeA.iCardType == CardType.FourKind) { return(CompareHighCard(cardTypeA.iHighCard, cardTypeB.iHighCard)); } else if (cardTypeA.iCardType == CardType.FullHouse) { if (cardTypeA.iFullHouse_Three != cardTypeB.iFullHouse_Three) { iRet = CompareHighCard(cardTypeA.iFullHouse_Three, cardTypeB.iFullHouse_Three); } else { iRet = CompareHighCard(cardTypeA.iFullHouse_Two, cardTypeB.iFullHouse_Two); } } else if (cardTypeA.iCardType == CardType.Flush) { iRet = CompareHighCard(cardTypeA.iHighCard, cardTypeB.iHighCard); } else if (cardTypeA.iCardType == CardType.Straight) { iRet = CompareHighCard(cardTypeA.iHighCard, cardTypeB.iHighCard); } else if (cardTypeA.iCardType == CardType.ThreeKind) { if (cardTypeA.iThreeKind_Three != cardTypeB.iThreeKind_Three) { iRet = CompareHighCard(cardTypeA.iThreeKind_Three, cardTypeB.iThreeKind_Three); } else { if (cardTypeA.iThreeKind_High1 != cardTypeB.iThreeKind_High1) { iRet = CompareHighCard(cardTypeA.iThreeKind_High1, cardTypeB.iThreeKind_High1); } else { iRet = CompareHighCard(cardTypeA.iThreeKind_High2, cardTypeB.iThreeKind_High2); } } } else if (cardTypeA.iCardType == CardType.TwoPairs) { if (cardTypeA.iTwoPair_Pair1 != cardTypeB.iTwoPair_Pair1) { iRet = CompareHighCard(cardTypeA.iTwoPair_Pair1, cardTypeB.iTwoPair_Pair1); } else { if (cardTypeA.iTwoPair_Pair2 != cardTypeB.iTwoPair_Pair2) { iRet = CompareHighCard(cardTypeA.iTwoPair_Pair2, cardTypeB.iTwoPair_Pair2); } else { iRet = CompareHighCard(cardTypeA.iTwoPair_High, cardTypeB.iTwoPair_High); } } } else if (cardTypeA.iCardType == CardType.OnePairs) { if (cardTypeA.iOnePair_Pair != cardTypeB.iOnePair_Pair) { iRet = CompareHighCard(cardTypeA.iOnePair_Pair, cardTypeB.iOnePair_Pair); } else { iRet = CompareHighCard(cardTypeA.iOnePair_High, cardTypeB.iOnePair_High); } } else if (cardTypeA.iCardType == CardType.HighCard) { iRet = CompareHighCard(cardTypeA.iHighCard, cardTypeB.iHighCard); } } return(iRet); }
public static int GetCardType(List <Card> _CardList) { CardTypeCaculator cardType = new CardTypeCaculator(_CardList); return(0); }