Class: Mastermind::Console::Controller
- Inherits:
-
Object
- Object
- Mastermind::Console::Controller
- Defined in:
- lib/mastermind/console/controller.rb
Instance Method Summary collapse
Instance Method Details
#play(game) ⇒ Object
28 29 30 31 32 33 34 35 36 |
# File 'lib/mastermind/console/controller.rb', line 28 def play(game) width = game.secret_length puts "#{game.codebreaker.name} must guess the code." puts View.grading_scheme puts View.top_border(width: width) make_guess(game) until game.over? puts View.bottom_border(width: width) puts "#{game.winner.name} wins! (#{game.attempts} guesses)" end |
#setup ⇒ Object
4 5 6 7 8 9 10 11 12 13 |
# File 'lib/mastermind/console/controller.rb', line 4 def setup puts View.introduction print "How many human players will there be? " number_of_players = Player::Human.get_input.to_i @player1 = get_player(1) if number_of_players > 0 @player1 ||= Player::Computer.new(name: "Computer (1)") @player2 = get_player(2) if number_of_players > 1 @player2 ||= Player::Computer.new(name: "Computer") end |
#start_game ⇒ Object
15 16 17 18 19 20 21 22 23 24 25 26 |
# File 'lib/mastermind/console/controller.rb', line 15 def start_game codebreaker = get_codebreaker codemaker = (codebreaker == @player1) ? @player2 : @player1 play Game.new( secret: get_secret_from(codemaker), codemaker: codemaker, codebreaker: codebreaker ) puts "\n\n" end |