Class: RubyTerminalGames::Snake::Board

Inherits:
Board
  • Object
show all
Defined in:
lib/ruby_terminal_games/snake/board.rb

Constant Summary collapse

APPLE =
"❤".freeze
SNAKE_BODY =
"◆".freeze
SNAKE_HEAD_RIGHT =
"⊃".freeze
SNAKE_HEAD_LEFT =
"⊂".freeze
SNAKE_HEAD_UP =
"∩".freeze
SNAKE_HEAD_DOWN =
"∪".freeze

Constants inherited from Board

Board::BOTTOM_SEPARATOR, Board::CENTER_SEPARATOR, Board::EMPTY_CHAR, Board::HORIZONTAL_DASHED_LINE, Board::HORIZONTAL_LINE, Board::LEFT_BOTTOM_CORNER, Board::LEFT_SEPARATOR, Board::LEFT_TOP_CORNER, Board::RIGHT_BOTTOM_CORNER, Board::RIGHT_SEPARATOR, Board::RIGHT_TOP_CORNER, Board::TOP_SEPARATOR, Board::VERTICAL_DASHED_LINE, Board::VERTICAL_LINE

Instance Attribute Summary

Attributes inherited from Board

#cols, #height, #rows, #width

Instance Method Summary collapse

Methods inherited from Board

#clear!, #draw_border!, #move_cursor, #write

Constructor Details

#initialize(width: nil, height: nil) ⇒ Board

Returns a new instance of Board.



11
12
13
14
15
# File 'lib/ruby_terminal_games/snake/board.rb', line 11

def initialize(width: nil, height: nil)
  super
  @width = cols
  @height = rows - 1
end

Instance Method Details



17
18
19
20
21
22
23
24
# File 'lib/ruby_terminal_games/snake/board.rb', line 17

def print_world!(game)
  clear!
  draw_border!
  draw_exit_instructions!
  draw_apple!(game.apple)
  draw_stats!(game.counter, game.points)
  draw_snake!(game.snake.state, game.direction)
end