HoldemHand.Hand.OutsDiscounted C# (CSharp) Method

OutsDiscounted() public static method

Returns the number of discouted outs possible with the next card. Players pocket cards The board (must contain either 3 or 4 cards) A list of zero or more opponent cards. The count of the number of single cards that improve the current hand applying the following discouting rules: 1) Drawing to a pair must use an over card (ie a card higher than all those on the board) 2) Drawing to 2 pair / pairing your hand is discounted if the board is paired (ie your 2 pair drawing deat to trips) 3) Drawing to a hand lower than a flush must not make a 3 suited board or the board be 3 suited. 4) Drawing to a hand lower than a stright, the flop must not be 3card connected or on the turn allow a straight to be made with only 1 pocket card or the out make a straight using only 1 card. Function provided by Matt Baker.
public static OutsDiscounted ( ulong player, ulong board ) : int
player ulong Players pocket hand
board ulong Board cards so far
return int
        public static int OutsDiscounted(ulong player, ulong board, params ulong[] opponents)
        {
            return BitCount(OutsMaskDiscounted(player, board, opponents));
        }