class Board
Attributes
cells[RW]
input[R]
Public Class Methods
new()
click to toggle source
# File lib/board.rb, line 6 def initialize @cells = Array.new(9, " ") end
Public Instance Methods
display()
click to toggle source
# File lib/board.rb, line 19 def display puts " #{@cells[0]} | #{@cells[1]} | #{@cells[2]} " puts "-----------" puts " #{@cells[3]} | #{@cells[4]} | #{@cells[5]} " puts "-----------" puts " #{@cells[6]} | #{@cells[7]} | #{@cells[8]} " end
full?()
click to toggle source
# File lib/board.rb, line 32 def full? @cells.include?(" " || "" || nil) ? false : true end
input=(input)
click to toggle source
# File lib/board.rb, line 14 def input=(input) @input = gets.strip @input.to_i end
position(input)
click to toggle source
# File lib/board.rb, line 27 def position(input) index = (input.to_i - 1) @cells[index] end
reset!()
click to toggle source
# File lib/board.rb, line 10 def reset! @cells = Array.new(9, " ") end
taken?(input)
click to toggle source
# File lib/board.rb, line 43 def taken?(input) if position(input) == "X" true elsif position(input) == "O" true else false end end
turn_count()
click to toggle source
# File lib/board.rb, line 36 def turn_count x_turns = @cells.count("X") o_turns = @cells.count("O") turn_count = x_turns + o_turns return turn_count end
update(position, player)
click to toggle source
# File lib/board.rb, line 61 def update(position, player) index = (position.to_i - 1) @cells[index] = player.token end
valid_move?(input)
click to toggle source
# File lib/board.rb, line 53 def valid_move?(input) if (input.to_i.between?(1,9) == true) && (taken?(input.to_i) == false) return true else return false end end