class Rps10k::Game

Public Class Methods

new() click to toggle source
# File lib/rps10k/game.rb, line 4
def initialize
  @player1 = Human.new
  @player2 = Computer.new
  @winner = nil
end

Public Instance Methods

display_tie_message() click to toggle source
# File lib/rps10k/game.rb, line 33
def display_tie_message
  puts "Tie game! Choose again!"
end
display_winner() click to toggle source
# File lib/rps10k/game.rb, line 24
def display_winner
  puts "#{@winner} won! You chose #{@player1.move} and computer chose #{@player2.move}"
end
game_over?() click to toggle source
# File lib/rps10k/game.rb, line 20
def game_over?
  @player1.move != @player2.move
end
play() click to toggle source
# File lib/rps10k/game.rb, line 10
def play
  until game_over?
    @player1.make_move
    @player2.make_move
    display_tie_message unless game_over?
  end
  who_won(@player1.move, @player2.move) 
  display_winner
end
who_won(move1, move2) click to toggle source
# File lib/rps10k/game.rb, line 28
def who_won(move1, move2)
  winning_combos = {'r' => 's', 's' => 'p', 'p' => 'r'}
  @winner = winning_combos[move1] == move2 ? 'You' : 'Computer'
end