Exercício – Concluir o desafio de adicionar métodos para tornar o jogo viável
Os desafios de código ao longo destes módulos reforçam o que você aprendeu e ajudam você a ter uma certa confiança antes de continuar.
O foco desse desafio é criar métodos corretos com os parâmetros adequados e tipos de retorno.
Desafio de minijogo de dados
Seu desafio é criar um minijogo. O jogo deve selecionar um número alvo que seja um número aleatório entre um e cinco (inclusive). O jogador deve rolar um dado de seis lados. Para vencer, o jogador deve rolar um número maior que o número alvo. No final de cada rodada, o jogador deve ser perguntado se gostaria de jogar novamente, e o jogo deve continuar ou terminar de acordo com a resposta.
Neste desafio, você recebe um código para iniciar. Você deve determinar quais métodos criar, os parâmetros e os tipos de retorno.
Desafio de código: adicionar métodos para tornar o jogo viável
No código com o qual você começa, há dois métodos indisponíveis referenciados:
-
ShouldPlay: Esse método deve recuperar a entrada do usuário e determinar se ele deseja jogar novamente -
WinOrLose: Esse método deve determinar se o jogador ganhou ou perdeu
Também há duas variáveis não inicializadas:
-
target: O número de meta aleatório entre 1 e 5 -
roll: O resultado da rolagem de dado de seis lados aleatória
Seu desafio é criar os métodos ShouldPlay e WinOrLose e criar métodos que definem target e roll para valores aleatórios no intervalo correto. Quando todos os métodos forem concluídos, o jogo deverá ser executado com êxito.
Verifique se você tem o arquivo Program.cs vazio aberto no Visual Studio Code.
Se necessário, abra o Visual Studio Code e conclua as seguintes etapas para preparar o arquivo Program.cs no Editor:
No menu Arquivo, selecione Abrir Pasta.
Use a caixa de diálogo Abrir Pasta para navegar e, em seguida, abra a pasta CsharpProjects.
No painel EXPLORER do Visual Studio Code, selecione Program.cs.
No menu Seleção do Visual Studio Code, escolha Selecionar Tudo e pressione a tecla Delete.
Copie e cole o seguinte código no painel Editor.
Random random = new Random(); Console.WriteLine("Would you like to play? (Y/N)"); if (ShouldPlay()) { PlayGame(); } void PlayGame() { var play = true; while (play) { var target; var roll; Console.WriteLine($"Roll a number greater than {target} to win!"); Console.WriteLine($"You rolled a {roll}"); Console.WriteLine(WinOrLose()); Console.WriteLine("\nPlay again? (Y/N)"); play = ShouldPlay(); } }Atualize o código para usar os métodos na execução do jogo de acordo com as especificações do desafio.
Use o que você aprendeu sobre parâmetros e valores retornados para concluir a atualização.
Verifique se o jogo está funcionando
O código deve produzir uma saída semelhante à seguinte:
Would you like to play? (Y/N) Y Roll a number greater than 1 to win! You rolled a 2 You win! Play again? (Y/N) Y Roll a number greater than 4 to win! You rolled a 6 You win! Play again? (Y/N) Y Roll a number greater than 1 to win! You rolled a 1 You lose! Play again? (Y/N) N
Se você tiver dificuldades e precisar dar uma olhada na solução ou se conseguir terminar, prossiga para exibir uma solução para esse desafio.