internal IEnumerable <EquityRangeSelectorItemViewModel> GetHeroAutoRange(string heroName)
        {
            if (_currentHandHistory == null)
            {
                return(null);
            }

            try
            {
                var handHistory = _currentHandHistory.DeepClone();

                handHistory.Hero = handHistory.Players.FirstOrDefault(x => x.PlayerName == heroName);

                var heroAutoHands = MainAnalyzer.GetHeroRange(handHistory, _currentStreet);

                if (heroAutoHands != null && heroAutoHands.Any())
                {
                    heroAutoHands = heroAutoHands.Where(x => EquityCalculatorMode == EquityCalculatorMode.Holdem ||
                                                        (EquityCalculatorMode == EquityCalculatorMode.HoldemSixPlus && x.FisrtCard > RangeCardRank.Five && x.SecondCard > RangeCardRank.Five));

                    heroAutoHands.ForEach(r => r.UsedCards = _board.Cards);

                    var opponentsCount = CountOpponents();

                    BluffToValueRatioCalculator.AdjustPlayerRange(heroAutoHands, _currentStreet, handHistory, GetBoardText(), opponentsCount);
                    return(heroAutoHands);
                }
            }
            catch (Exception e)
            {
                LogProvider.Log.Error(this, "Could not build auto range for hero", e);
            }

            return(null);
        }
Esempio n. 2
0
 public void CheckBluffToValueBetRatio(int opponentsCount, Street street)
 {
     if (BluffToValueRatioCalculator.CheckRatio(opponentsCount, BluffCombos, ValueBetCombos, street, out int[] increaseBluffBy, out int[] increaseValueBy))