Class: GuessTheNumberGame
- Inherits:
-
Object
- Object
- GuessTheNumberGame
- Defined in:
- lib/guess_the_number_game.rb
Constant Summary collapse
- MAX_NUMBER =
10
Instance Attribute Summary collapse
-
#guess_checker ⇒ Object
readonly
Returns the value of attribute guess_checker.
-
#message_manager ⇒ Object
readonly
Returns the value of attribute message_manager.
Instance Method Summary collapse
-
#initialize(guess_checker, output_handler) ⇒ GuessTheNumberGame
constructor
A new instance of GuessTheNumberGame.
- #play ⇒ Object
Constructor Details
#initialize(guess_checker, output_handler) ⇒ GuessTheNumberGame
Returns a new instance of GuessTheNumberGame.
9 10 11 12 13 14 |
# File 'lib/guess_the_number_game.rb', line 9 def initialize(guess_checker, output_handler) @random_number = 1 + rand(MAX_NUMBER) @message_manager = MessageManager.new @guess_checker = guess_checker @output_handler = output_handler end |
Instance Attribute Details
#guess_checker ⇒ Object (readonly)
Returns the value of attribute guess_checker.
5 6 7 |
# File 'lib/guess_the_number_game.rb', line 5 def guess_checker @guess_checker end |
#message_manager ⇒ Object (readonly)
Returns the value of attribute message_manager.
5 6 7 |
# File 'lib/guess_the_number_game.rb', line 5 def @message_manager end |
Instance Method Details
#play ⇒ Object
16 17 18 19 20 21 22 23 24 |
# File 'lib/guess_the_number_game.rb', line 16 def play loop do user_guess = request_and_get_guess clue = guess_checker.clue_for(@random_number, user_guess) clue ? @output_handler.show(clue) : break end @output_handler.show(.correct) end |