Class: Game
- Inherits:
-
Object
- Object
- Game
- Defined in:
- lib/game.rb
Instance Attribute Summary collapse
-
#guesses ⇒ Object
readonly
Returns the value of attribute guesses.
-
#sequence ⇒ Object
readonly
Returns the value of attribute sequence.
Instance Method Summary collapse
- #guess(guess) ⇒ Object
-
#initialize ⇒ Game
constructor
A new instance of Game.
- #start ⇒ Object
Constructor Details
#initialize ⇒ Game
Returns a new instance of Game.
10 11 12 13 14 |
# File 'lib/game.rb', line 10 def initialize @guesses = [] @started = false @sequence = SequenceGenerator.new.random end |
Instance Attribute Details
#guesses ⇒ Object (readonly)
Returns the value of attribute guesses.
8 9 10 |
# File 'lib/game.rb', line 8 def guesses @guesses end |
#sequence ⇒ Object (readonly)
Returns the value of attribute sequence.
8 9 10 |
# File 'lib/game.rb', line 8 def sequence @sequence end |
Instance Method Details
#guess(guess) ⇒ Object
21 22 23 24 25 26 27 28 |
# File 'lib/game.rb', line 21 def guess(guess) raise GameNotStarted unless @started if GuessValidator.valid?(guess) process_guess(guess) else 'You must enter a valid guess: four characters long, consisting of (R)ed, (G)reen, (B)lue, or (Y)ellow.' end end |
#start ⇒ Object
16 17 18 19 |
# File 'lib/game.rb', line 16 def start raise GameAlreadyStarted if @started @started = true end |