Fala ai Carolina, tudo bem? Olhando o erro informado para você:
forca.rb:8:in escolhe_palavra_secreta': undefined method todas_as_palavras' for main:Object (NoMethodError)
Está dizendo que não foi encontrado o método (função) chamado todas_as_palavras
, isso porque você está tentando chamá-la como um método, mas, a no caso o todas_as_palavras
seria uma variável.
Vamos ver seu código:
def escolhe_palavra_secreta
avisa_escolhendo_palavra
texto = File.read ("dicionario.txt")
todas_as_palavras = texto.split "\n"
numero_escolhido = rand(todas_as_palavras.size)
palavra_secreta = todas_as_palavras(numero_escolhido)
avisa_palavra_escolhida palavra_secreta
end
Repare na linha que aponta o problema:
palavra_secreta = todas_as_palavras(numero_escolhido)
Você está tentando chamar uma função, acho que o ideal seria trocar os parenteses ()
por colchetes []
, ficando:
palavra_secreta = todas_as_palavras[numero_escolhido]
A função completa ficaria:
def escolhe_palavra_secreta
avisa_escolhendo_palavra
texto = File.read ("dicionario.txt")
todas_as_palavras = texto.split "\n"
numero_escolhido = rand(todas_as_palavras.size)
palavra_secreta = todas_as_palavras[numero_escolhido]
avisa_palavra_escolhida palavra_secreta
end
Acredito que com essa mudança o problema deve ser resolvido.
Espero ter ajudado.