class Bridge::Trick

Constants

REQUIRED_CARDS

Attributes

cards[RW]
leader[RW]

Public Class Methods

new(params = {}) click to toggle source
# File lib/bridge/trick.rb, line 6
def initialize(params = {})
  params.map { |k,v| self.send(:"#{k}=",v) }
  self.cards = [] if self.cards.nil?
end

Public Instance Methods

done?() click to toggle source
# File lib/bridge/trick.rb, line 11
def done?
  self.cards.compact.size >= REQUIRED_CARDS
end
leader_card() click to toggle source
# File lib/bridge/trick.rb, line 15
def leader_card
  self.cards[self.leader]
end
method_missing(method, *args, &block) click to toggle source
Calls superclass method
# File lib/bridge/trick.rb, line 19
def method_missing(method, *args, &block)
  begin
    self.cards = self.cards.to_s.split(' ').map { |c| Card.from_string(c) } unless self.cards.class == Array
    self.cards.send(method, *args, &block)
  rescue Exception => e
    super
  end
end