internal static int CompareTwoFlushHands(IHand firstHand, IHand secondHand)
{
if (checker.IsFlush(firstHand) && !checker.IsFlush(secondHand))
{
return(1);
}
else if (!checker.IsFlush(firstHand) && checker.IsFlush(secondHand))
{
return(-1);
}
var firstHandSortedCards = firstHand.Cards;
var secondHandSortedCards = secondHand.Cards;
PokerHandsChecker.SortCardsByFace(firstHandSortedCards);
PokerHandsChecker.SortCardsByFace(secondHandSortedCards);
for (int i = firstHandSortedCards.Count - 1; i >= 0; i--)
{
if ((int)firstHandSortedCards[i].Face > (int)secondHandSortedCards[i].Face)
{
return(1);
}
else if ((int)firstHandSortedCards[i].Face < (int)secondHandSortedCards[i].Face)
{
return(-1);
}
}
return(0);
}