Sha256: 674d6f56953fb9a2349ddecc64198dc49a43addd8e28cb8c76812f208fbdff0c

Contents?: true

Size: 818 Bytes

Versions: 4

Compression:

Stored size: 818 Bytes

Contents

#!/usr/bin/env ruby

require 'thor'
require_relative '../lib/hdeck'

class CLI < Thor
  package_name "hdeck"

  desc "new", "create a new harrow deck"
  option :alignment, default: 'CN'
  def new()
    puts 'Creating a new Harrow Deck.'
    # TODO: validate alignment
    player = HDeck::CardCaster.new(alignment: options[:alignment])
    active = true

    while active do
      action = ask("What would you like to do? (draw) (throw) (quit)\n")

      if action == 'draw'
        player.draw_card(shuffle_before: true, replace: true)
      elsif action == 'throw'
        player.draw_card(shuffle_before: true, replace: false, calculate_match: true)
      elsif action == 'quit' || action == 'q'
        active = false
      else
        puts 'did not recognize command'
      end
    end
  end
end

CLI.start(ARGV)

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
hdeck-0.1.3 bin/hdeck
hdeck-0.1.2 bin/console
hdeck-0.1.1 bin/console
hdeck-0.1.0 bin/console