Sha256: 66387fadad76ec1bf2a939752023755f261c6c2afcfb87ee2dedce35faf657d8

Contents?: true

Size: 388 Bytes

Versions: 1

Compression:

Stored size: 388 Bytes

Contents

module Bridge
  class Trick
    attr_reader :cards, :suit

    def initialize(*args)
      @cards = args.flatten.map { |c| Bridge::Card.new(c.to_s) }
      @suit = @cards.first.suit
    end

    def winner(trump = nil)
      winner_in_suit(trump) || winner_in_suit(@suit)
    end

    private

    def winner_in_suit(suit)
      @cards.select { |c| c.suit == suit }.max
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
bridge-0.0.12 lib/bridge/trick.rb