2018-01-23 01:04:38 +00:00
|
|
|
class Human
|
|
|
|
|
|
|
|
attr_reader :piece
|
|
|
|
|
|
|
|
def initialize board, piece
|
|
|
|
@board = board
|
|
|
|
@piece = piece
|
|
|
|
end
|
|
|
|
|
|
|
|
def move
|
|
|
|
print "\nPick a move!\n"
|
|
|
|
free_moves = @board.get_free
|
|
|
|
idx = gets.strip.to_i
|
2018-01-23 01:13:50 +00:00
|
|
|
free_moves.map! {|i| i+1}
|
2018-01-23 01:04:38 +00:00
|
|
|
if not free_moves.include? idx then
|
|
|
|
print "Square is already taken, try again!"
|
|
|
|
move
|
|
|
|
else
|
2018-01-23 01:13:50 +00:00
|
|
|
@board.set @piece, (idx - 1)
|
2018-01-23 01:04:38 +00:00
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|