Olá,
Quando executo o jogo no cmd a contagem de erros sempre mostra 0 e não adiciona mais 1. Eu já conferi o código diversas vezes e não consigo encontrar o problema.
Esse é meu codigo:
def da_boas_vindas
puts "Bem vindo ao jogo da forca"
puts "\n\n\n"
puts "Qual o seu nome?"
nome = gets.strip
puts "\n\n"
puts "Começaremos o jogo para você, #{nome}."
nome
end
def escolhe_palavra_secreta
puts "\n\n"
puts "Escolhendo uma palavra"
palavra_secreta = "programador"
puts "\n\n\n"
puts "Palavra secreta com #{palavra_secreta.size} letras escolhida. Que tal adivinhar a palavra secreta? 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
puts "Chutes até agora: #{chutes}"
puts
puts "Entre com uma letra ou palavra"
chute = gets.strip
puts " Você chutou #{chute}. Sera que acertou?"
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
chutes << chute
chutou_uma_letra = chute.size == 1
if chutou_uma_letra
else
acertou = chute == palavra_secreta
if acertou
puts "Acertou! Parabens!"
pontos_ate_agora += 100
break
else
puts "Que pena..errou"
pontos_ate_agora -= 30
erros += 1
end
end
end
puts "Você ganhou #{pontos_ate_agora} pontos."
end
nome = da_boas_vindas
loop do
joga nome
if nao_quer_jogar?
break
end
end