class HumanPlayer

Attributes

move_signature[R]
user_interface[R]

Public Class Methods

new(move_signature, user_interface) click to toggle source
# File lib/negamax_ttt/players/human_player.rb, line 4
def initialize(move_signature, user_interface)
  @move_signature = move_signature
  @user_interface = user_interface
end

Public Instance Methods

get_move(rules) click to toggle source
# File lib/negamax_ttt/players/human_player.rb, line 9
def get_move(rules)
  move_prompt = lambda { user_interface.request_move }
  valid_moves = lambda { |move| rules.board.open_spaces.include?(move.to_i) }
  move = user_interface.get_validated_input(move_prompt, valid_moves)
  move.to_i
end