class TwentyOne::Deck
Attributes
cards[R]
Public Class Methods
new()
click to toggle source
# File lib/twenty_one/deck.rb, line 10 def initialize @cards = [] @cards.concat generate_suit(:clubs) @cards.concat generate_suit(:diamonds) @cards.concat generate_suit(:hearts) @cards.concat generate_suit(:spades) end
Public Instance Methods
draw()
click to toggle source
# File lib/twenty_one/deck.rb, line 23 def draw @cards.shift end
shuffle()
click to toggle source
# File lib/twenty_one/deck.rb, line 19 def shuffle @cards.shuffle! end
Private Instance Methods
generate_suit(suit)
click to toggle source
# File lib/twenty_one/deck.rb, line 29 def generate_suit(suit) set = [] set.push AceCard.new(suit) for i in 2..@@DECK_LENGTH / 4 - 3 set.push Card.new suit, i end set.push FaceCard.new suit, :jack set.push FaceCard.new suit, :queen set.push FaceCard.new suit, :king set end