3
respostas

Pong Finalizado com Bug

Terminei o projeto, mas observei alguns bugs:

  • A bolinha, algumas vezes, fica presa à raquete, rebatendo mais de uma vez.
  • Os pontos podem ser contabilizados mais de uma vez.

https://scratch.mit.edu/projects/739166015

3 respostas

Oiê Walison, tudo bem?

Parabéns por ter finalizado o projeto! A prática é muito importante para um dev.

Entendi, eu olhei o link que você enviou mas não consegui visualizar. Você poderia me enviar novamente para eu poder lhe ajudar?

Aliás, gostaria de deixar um vídeo bem completo da Beatriz, onde ela ensina como turbinar os seus estudos com o fórum, pode ser interessante você utilizar.

E se você deseja avançar ainda mais os seus conhecimentos, lhe indico essa trilha:

Se houver dúvidas pelo caminho pode mandar aqui no fórum, estarei à disposição.

Bons estudos e a gente se vê!

Olá Nathália.

Alterei a configuração e agora o projeto está visível.

Desde já obrigado pela resposta.

Consegui visualizar o jogo, obrigada! Para resolver os bugs, realizaremos algumas modificações em seu código, começando pela bolinha.

  • Conforme o professor citou no vídeo, centralizar a bolinha é importante para evitar bugs. Vá na aba fantasia e centralize-a no eixo.

Captura de imagem do jogo Pong no Scratch  mostrando a bolinha centralizada no eixo.

  • Vá para a aba código com o ator bolinha selecionado, altere a posição da bolinha de posição y - (-50) para posição y - 50, igual ao professor fez na aula.

Captura de imagem do jogo Pong no Scratch  mostrando, quando a bandeira verde que inicia o jogo for clicada, sempre mova doze passos, mude posição y da bolinha para posição y -50, se tocar na borda, volte. O valor 50 está destacado em vermelho.

  • Ainda no ator bolinha, remova o bloco aponte para a direção * (-1). Para acrescentarmos outros blocos, essa é uma das formas de resolver o bug da pontuação infinita e do travamento da bolinha, veja no item 4.

Captura de imagem do jogo Pong no Scratch  mostrando o bloco aponte para a direção vezes menos abre parênteses menos um fecha parênteses sendo retirado. O  aponte para direção direção vezes menos um está destacado em vermelho

  • Remova também o bloco verde com o operador ou e substitua para o bloco tocando em raquete 2.

Captura de imagem do jogo Pong no Scratch  mostrando, quando a bandeira verde que inicia o jogo for clicada, sempre, se tocando em raquete 2 então, volte. O bloco, se tocando em Raquete2 ? então, está destacado em vermelho.

  • Acrescente o bloco aponte para a direção, o bloco número aleatório entre e coloque os números -30 e -125. Essa opção terá um resultado semelhante ao do professor quando ele coloca o bloco direção * -1, a diferença é que, a bolinha a partir de agora voltará para uma direção aleatória resolvendo o bug da pontuação infinita e da bolinha ficar presa na raquete.

Captura de imagem do jogo Pong no Scratch mostrando quando a bandeira verde que inicia o jogo for clicada, sempre, se tocando em raquete 2 então, acrescente aponte para a direção e número aleatório entre  -30 e -125, este bloco está destacado em vermelho.

  • Repita o item 5 no código da Raquete, alterando os ângulos para 30 e 125.

Captura de imagem do jogo Pong no Scratch mostrando quando a bandeira verde que inicia o jogo for clicada, sempre, tocando em raquete2 então, aponte para a direção, número aleatório entre -30 e -125, toque o som acertar bolinha, se, tocando em raquete então, aponte para direção, número aleatório entre 30 e 125, toque o sim acertar bolinha, volte. O segundo bloco está destacado em vermelho.

  • No ator bolinha altere posição x < -229 para posição x < -224, assim a contagem dos pontos será mais precisa. Depois, acrescente o bloco aponte para a direção e então acrescente o bloco número aleatório entre 30 e 125. Repita o processo para a contagem dos pontos da Raquete 2, aponte para a direção, número aleatório entre - 30 e -125.

Captura de imagem do jogo Pong no Scratch mostrando o código de pontuação, acrescentando o bloco aponte para a direção e o bloco número aleatório entre 30 e 125 e o bloco número aleatório -30 e -125. Os valores -224 e 224 estão destacados em vermelho, bem como, os blocos aponte para a direção, número aleatório entre 30 e 125 e aponte para a direção, número aleatório entre -30 e -125, também.

A posição da raquete 2 não está igual ao da raquete, vamos alterar sua posição.

  • Com o ator raquete 2 selecionado altere o valor para vá para x: 220 y: 0. Pois a raquete 2 estava próxima das bordas e a contabilização dos pontos era realizada.
  • Altere o deslize por 0 segs até x: 239 y: posição y da bolinha para deslize por 0 segs até x: 220 y: 0 posição y da bolinha, este é o bloco que causará o resultado citado anteriormente.

Captura de imagem do jogo Pong no Scratch mostrando o código, quando a bandeira verde que inicia o jogo for clicada, vá para x: 220 y: 0. O valor 220 está destacado em vermelho. E o segundo código, quando a bandeira verde que inicia o jogo for clicado, sempre deslize por 0 segs até x: 220 y: posição y da bolinha, volte. O valor 220 está destacado em vermelho.

Caso tenha mais dúvidas estarei à disposição!