Meu código está exatamente igual ao do instrutor, e sempre apresenta o mesmo erro. Já verifiquei o código e não encontrei o erro. E ele nem entra na parte de perguntar se desejo jogar novamente.
def da_boas_vindas
puts "Bem vindo ao jogo da forca!!"
puts "Qual é o seu nome?"
nome = gets.strip
puts "\n\n\n\n\n"
puts "Então vamos começar a brincadeira, #{nome}"
nome
end
def escolhe_palavra_secreta
puts "Escolhendo uma palavra secreta..."
palavra_secreta = "programador"
puts "Palavra secreta com #{palavra_secreta.size} letras ... boa sorte!"
palavra_secreta
end
def nao_quer_jogar
puts "Deseja jogar novamente? (S/N)"
quero_jogar = gets.strip
nao_quero_jogar = quero_jogar.upcase == "N"
end
def pede_um_chute (chutes, erros)
puts "\n\n\n\n"
puts "Erros até agora: #{erros}"
puts "Chutes até agora: #{chutes}"
puts "Entre com uma letra ou uma palavra..."
chute = gets.strip
puts "Será que acertou? Vc chutou #{chute}"
chute
end
def joga (nome)
palavra_secreta = escolhe_palavra_secreta
erros = 0
chutes = []
pontos_ate_agora = 0
while erros < 5
chute = pede_um_chute chutes, erros
if chutes.include? chute
puts "Vc já chutou #{chute}."
next
end
chutes << chute
chutou_uma_letra = chute.size == 1
if chutou_uma_letra
letra_procurada = chute [0]
total_encontrado = palavra_secreta.count letra_procurada
if total_encontrado == 0
puts "Letra não encontrada."
erros += 1
else
puts "Letra encontrada #{total_encontrado} vezes."
end
else
acertou = chute == palavra_secreta
if acertou
puts "Parabéns!! Vc acertou!"
pontos_ate_agora += 100
break
else
puts "Que pena ... vc errou... :("
pontos_ate_agora -= 30
erros += 1
end
end
end
puts "Vc ganhou #{pontos_ate_agora} pontos."
end
nome = da_boas_vindas
loop do
joga nome
if nao_quer_jogar?
break
end
end
E o erro...
Bem vindo ao jogo da forca!!
Qual é o seu nome?
p
Então vamos começar a brincadeira, p
Escolhendo uma palavra secreta...
Palavra secreta com 11 letras ... boa sorte!
Erros até agora: 0
Chutes até agora: []
Entre com uma letra ou uma palavra...
programador
Será que acertou? Vc chutou programador
Parabéns!! Vc acertou!
Vc ganhou 100 pontos.
Traceback (most recent call last):
2: from C:/Users/Priscila/Desktop/Alura Cursos - Priscila/forca.rb:77:in `<main>'
1: from C:/Users/Priscila/Desktop/Alura Cursos - Priscila/forca.rb:77:in `loop'
C:/Users/Priscila/Desktop/Alura Cursos - Priscila/forca.rb:79:in `block in <main>': undefined method `nao_quer_jogar?' for main:Object (NoMethodError)
Did you mean? nao_quer_jogar
Alguém poderia me ajudar a achar o erro?? Obrigado