Blackjack.Players.WizardSimpleStrategy.DoubleDown C# (CSharp) Method

DoubleDown() public method

public DoubleDown ( HandInfo info ) : bool
info HandInfo
return bool
        public virtual bool DoubleDown(HandInfo info)
        {
            var hand = info.PlayerHands.ElementAt(info.HandToPlay);
            var value = hand.Value;
            var soft = hand.Soft;
            var dealer = info.DealerHand.Cards.ElementAt(0).Rank;

            if (soft)
            {
                if (value == 16 || value == 17 || value == 18)
                    return dealer < Ranks.Seven;
                return false;
            }

            if ((value == 10 || value == 11) && value > info.DealerHand.Value)
                return true;

            if (dealer < Ranks.Seven && value == 9)
                return true;

            return false;
        }