class Hand
Constants
- MDHV
Attributes
cards[RW]
Public Class Methods
deck()
click to toggle source
# File lib/hand.rb, line 8 def self.deck; @@deck; end
deck=(deck)
click to toggle source
# File lib/hand.rb, line 5 def self.deck=(deck); @@deck = deck.cards.shuffle; end
new(cards=[@@deck.shift, @@deck.shift])
click to toggle source
# File lib/hand.rb, line 11 def initialize(cards=[@@deck.shift, @@deck.shift]) @cards = cards end
Public Instance Methods
blackjack?()
click to toggle source
# File lib/hand.rb, line 10 def blackjack?; value == 21 && @cards.length == 2; end
bust?()
click to toggle source
# File lib/hand.rb, line 9 def bust?; value > 21; end
hit()
click to toggle source
# File lib/hand.rb, line 15 def hit; @cards.push @@deck.shift; end
value()
click to toggle source
# File lib/hand.rb, line 16 def value # The value of the cards in @cards v, aces = 0, 0 for card in @cards v += card.value aces += 1 if card.num == "Ace" end while v > 21 && aces > 0 v -= 10 aces -= 1 end return v end
view()
click to toggle source
# File lib/hand.rb, line 14 def view; @cards.each {|card| "#{card.abbr}\t"}; end