src/ExactComposition.js
function (playerCards, dealerCard, handValue, handCount, dealerCheckedBlackjack, options) 
    {
        // If exactComposition isn't set, no override
        if (options.strategyComplexity != "exactComposition")
        {
            return null;
        }

        // Now look at strategies based on game options
        if ((options.numberOfDecks == 2) && (!options.hitSoft17)) 
        {
            return TwoDeckStandSoft17(playerCards, dealerCard, handValue, handCount, dealerCheckedBlackjack, options);
        }
    }
function (playerCards, dealerCard, handValue, handCount, dealerCheckedBlackjack, options) 
    {
        // If exactComposition isn't set, no override
        if (options.strategyComplexity != "exactComposition")
        {
            return null;
        }

        // Now look at strategies based on game options
        if ((options.numberOfDecks == 2) && (!options.hitSoft17)) 
        {
            return TwoDeckStandSoft17(playerCards, dealerCard, handValue, handCount, dealerCheckedBlackjack, options);
        }
    }
function ( playerCards , dealerCard , handValue , handCount , dealerCheckedBlackjack , options ) { // If exactComposition isn't set, no override if ( options . strategyComplexity != "exactComposition" ) { return null ; } // Now look at strategies based on game options if ( ( options . numberOfDecks == 2 ) && ( ! options . hitSoft17 ) ) { return TwoDeckStandSoft17 ( playerCards , dealerCard , handValue , handCount , dealerCheckedBlackjack , options ) ; } }
Special-case overrides based on exact composition of cards
Special - case overrides based on exact composition of cards