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