Class: Minesweeper::GameInitializer

Inherits:
Object
  • Object
show all
Defined in:
lib/minesweeper/game_initializer.rb

Instance Method Summary collapse

Constructor Details

#initializeGameInitializer

Returns a new instance of GameInitializer.



5
6
7
# File 'lib/minesweeper/game_initializer.rb', line 5

def initialize
  @window = Window.new(0, 0, 0, 0)
end

Instance Method Details

#restartObject



26
27
28
# File 'lib/minesweeper/game_initializer.rb', line 26

def restart
  play(false)
end

#startObject



9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# File 'lib/minesweeper/game_initializer.rb', line 9

def start
  init_screen
  init_colors
  cbreak
  window.keypad = true
  window.refresh
  window.addch("\n")
  window.addstr("Welcome to Minesweeper \n")
  window.addstr("screen size: rows: #{window.maxy}; columns: #{window.maxx / Minesweeper::Board::STEP} \n")
  window.addstr("controls: `space` to mark/unmark cell as bomb, `arrow keys` to navigate \n")
  play
rescue SystemExit, Interrupt
ensure
  close_screen
  at_exit { puts 'good bye' }
end