Class: CardsLib::Standard::Evaluators::BlackjackEvaluator

Inherits:
Object
  • Object
show all
Defined in:
lib/cards_lib/standard/evaluators/blackjack_evaluator.rb

Instance Method Summary collapse

Constructor Details

#initialize(cards) ⇒ BlackjackEvaluator

Returns a new instance of BlackjackEvaluator.



5
6
7
8
# File 'lib/cards_lib/standard/evaluators/blackjack_evaluator.rb', line 5

def initialize(cards)
  @cards = cards
  @reduced_ace_count = 0
end

Instance Method Details

#worthObject



10
11
12
13
14
15
16
17
# File 'lib/cards_lib/standard/evaluators/blackjack_evaluator.rb', line 10

def worth
  @worth ||= @cards.map(&:value).inject(:+)
  if @worth > 21
    attempt = reduce_by_ace
    attempt = reduce_by_ace until @worth < 22 || !attempt
  end
  @worth
end