Example #1
0
        public List <List <List <Card> > > splitRanges(string path, List <List <Card> > playerOutsRange, List <Card> street)
        {
            EVCalculator ev = new EVCalculator(Player, Settings);

            double EvOpponentCards = 0;

            foreach (var element in playerOutsRange)
            {
                EvOpponentCards = ev.CalculateEv(path, element, street);
                if (EvOpponentCards >= 2)
                {
                    cardsHeRaises.Add(element);
                }

                if (EvOpponentCards <= 0)
                {
                    cardsHeFolds.Add(element);
                }

                if (EvOpponentCards > 0 && EvOpponentCards < 2)
                {
                    cardsHeCalls.Add(element);
                }
            }

            OpponentReactionToHand.Add(cardsHeRaises);
            OpponentReactionToHand.Add(cardsHeCalls);
            OpponentReactionToHand.Add(cardsHeFolds);

            return(OpponentReactionToHand);
        }
 public TreeConstructor(PokerGame game, OpponentData data)
 {
     _player       = game.Players[1];
     _settings     = game.Settings;
     _street       = game.Hand.Street;
     _data         = data;
     _evCalculator = new EVCalculator(game, game.Settings);
 }
Example #3
0
        private double[] GetEVs(string[] paths, List <Card> cardHand, List <Card> street, Player player, Settings settings)
        {
            EVCalculator evCalculator = new EVCalculator(_pokerGame, settings);

            return(evCalculator.CalculateAll(paths, cardHand, street, player));
        }