Class: Deck

Inherits:
Object
  • Object
show all
Defined in:
lib/mblackjack/deck.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeDeck

Returns a new instance of Deck.



4
5
6
7
8
9
10
11
12
# File 'lib/mblackjack/deck.rb', line 4

def initialize
  @unique_cards = ['ace',2,3,4,5,6,7,8,9,10,'J','Q','K']

  @cards = []
  @@card_values = {}

  make_deck
  assign_value
end

Instance Attribute Details

#aceObject

Returns the value of attribute ace.



2
3
4
# File 'lib/mblackjack/deck.rb', line 2

def ace
  @ace
end

#cardsObject

Returns the value of attribute cards.



2
3
4
# File 'lib/mblackjack/deck.rb', line 2

def cards
  @cards
end

#unique_cardsObject

Returns the value of attribute unique_cards.



2
3
4
# File 'lib/mblackjack/deck.rb', line 2

def unique_cards
  @unique_cards
end

Class Method Details

.card_valuesObject



20
21
22
# File 'lib/mblackjack/deck.rb', line 20

def self.card_values
  @@card_values
end

Instance Method Details

#assign_valueObject



24
25
26
27
28
29
30
31
32
33
34
# File 'lib/mblackjack/deck.rb', line 24

def assign_value
  v = 1
  unique_cards.each do |c|
    @@card_values.store(c, v)
    v += 1
  end
  @@card_values['ace'] = [1,11]
  @@card_values['J'] = 10
  @@card_values['Q'] = 10
  @@card_values['K'] = 10
end

#make_deckObject



14
15
16
17
18
# File 'lib/mblackjack/deck.rb', line 14

def make_deck
  @cards = []
  @cards << unique_cards * 4
  @cards = @cards.flatten
end