module Boy2Man

Constants

HANDS
VERSION

Public Class Methods

judge(a, b) click to toggle source
# File lib/Boy2Man/janken.rb, line 4
def self.judge(a, b)
  case a
  when "グー"
    if b == "チョキ"
      return a
    elsif b == "パー"
      return b
    else
      return nil
    end
  when "チョキ"
    if b == "パー"
      return a
    elsif b == "グー"
      return b
    else
      return nil
    end
  when "パー"
    if b == "グー"
      return a
    elsif b == "チョキ"
      return b
    else
      return nil
    end
  end
end
play() click to toggle source
# File lib/Boy2Man/cli.rb, line 3
def self.play
  janken = Janken.new
  loop do
    print '> '
    hand = gets.chomp
    case hand
    when "", "bye", "exit"
      exit
    when *HANDS
      puts opponent = janken.pon(hand)

      winner = Boy2Man.judge(hand, opponent)
      if winner == hand
        puts "You Win!"
      elsif winner == opponent
        puts "You Lose!"
      else
        puts "Draw!"
      end
    when "history"
      puts janken.history
    when "reset"
      janken.reset
    else
      puts janken.select_hand
    end
  end
end