It looks like it should be shortened but I can't see how.
I have my methods <= 5 lines but that's as far as I got:
def check_lines
if horizontal?(@player) || vertical?(@player) || diagonal?(@player)
@win=@player
end
end
def horizontal?(player)
((@squares[0] == player) && (@squares[1] == player) && (@squares[2] == player)) ||
((@squares[3] == player) && (@squares[4] == player) && (@squares[5] == player)) ||
((@squares[6] == player) && (@squares[7] == player) && (@squares[8] == player))
end
def vertical?(player)
((@squares[0] == player) && (@squares[3] == player) && (@squares[6] == player)) ||
((@squares[1] == player) && (@squares[4] == player) && (@squares[7] == player)) ||
((@squares[2] == player) && (@squares[5] == player) && (@squares[8] == player))
end
def diagonal?(player)
((@squares[0] == player) && (@squares[4] == player) && (@squares[8] == player)) ||
((@squares[2] == player) && (@squares[4] == player) && (@squares[6] == player))
end