class C4::View::Cli

Attributes

game[R]

Public Class Methods

new(game) click to toggle source
# File lib/c4/view/cli.rb, line 8
def initialize(game)
  @game = game
end

Public Instance Methods

print() click to toggle source

Private Instance Methods

board() click to toggle source
# File lib/c4/view/cli.rb, line 24
def board
  game.board.to_a(:print)
end
printable_board() click to toggle source
# File lib/c4/view/cli.rb, line 28
def printable_board
  board.map do |lv|
    lv.map do |e|
      e.nil? ? ' ' : e
    end
  end
end
text() click to toggle source
# File lib/c4/view/cli.rb, line 18
def text
  [text_columns,
   text_divider,
   text_column_numbers].join("\n") + "\n"
end
text_column_numbers() click to toggle source
# File lib/c4/view/cli.rb, line 46
def text_column_numbers
  "|#{(0...printable_board.first.size).to_a.join('|')}|"
end
text_columns() click to toggle source
# File lib/c4/view/cli.rb, line 36
def text_columns
  printable_board.map do |lv|
    "|#{lv.join('|')}|"
  end.join("\n")
end
text_divider() click to toggle source
# File lib/c4/view/cli.rb, line 42
def text_divider
  '-' * (printable_board.first.size * 2 + 1)
end