class GuessLogic
Class for processing guesses
Attributes
guessed_letters[R]
incorrect_guesses[RW]
incorrect_letters[RW]
messages[RW]
word_to_guess[R]
Public Class Methods
new(word_to_guess)
click to toggle source
# File lib/guess_logic.rb, line 9 def initialize(word_to_guess) @word_to_guess = word_to_guess.word @guessed_letters = [] @incorrect_letters = [] @incorrect_guesses = 0 @messages = [] end
Public Instance Methods
compare(guess)
click to toggle source
# File lib/guess_logic.rb, line 21 def compare(guess) if correct_guess?(guess) add_letters(guessed_letters, guess) messages << "\n That's Correct!" else add_letters(incorrect_letters, guess) self.incorrect_guesses += 1 messages << "\n Sorry, that's incorrect." end end
correct_word?(guess)
click to toggle source
# File lib/guess_logic.rb, line 36 def correct_word?(guess) word_to_guess == guess.answer end
full_word_guess?(guess)
click to toggle source
# File lib/guess_logic.rb, line 32 def full_word_guess?(guess) word_to_guess.length == guess.answer.length end
guessed_word()
click to toggle source
# File lib/guess_logic.rb, line 17 def guessed_word word_to_guess.chars.map { |char| guessed_letters.include?(char) ? char : '-' }.join end
Private Instance Methods
add_letters(collection, guess)
click to toggle source
# File lib/guess_logic.rb, line 46 def add_letters(collection, guess) collection << guess.answer end
correct_guess?(guess)
click to toggle source
# File lib/guess_logic.rb, line 42 def correct_guess?(guess) word_to_guess.include?(guess.answer) end