Estou tentando recriar o jogo PONG na linguagem Scratch. Porém está ocorrendo um bug em que o bolinha fica presa na ponta do retângulo (raquete), e está atrapalhando o andamento do jogo. Alguém pode me auxiliar com isso?
Estou tentando recriar o jogo PONG na linguagem Scratch. Porém está ocorrendo um bug em que o bolinha fica presa na ponta do retângulo (raquete), e está atrapalhando o andamento do jogo. Alguém pode me auxiliar com isso?
Oi, André! Tudo bem?
Desculpa a demora por um retorno
O bug mencionado tem uma ocorrência muito comum no Scratch e para solucionarmos esse problema podemos fazer algumas adições ao nosso código.
Devemos adicionar ao código responsável pela pontuação a seguinte lógica: quando a bolinha bater na parede (posição x for menor -229 ou for maior que 229, por exemplo), o som de ponto é tocado imediatamente, entretanto o programa esperará 0.5 segundo e conferirá se a posição da bolinha permanece no mesmo lugar, conferindo assim se ela está presa na raquete. Caso ela permaneça naquela posição, presa na raquete, o programa irá adicionar um valor à posição x da bolinha, libertando-a, caso não, irá então adicionar 1 ponto ao placar.
Entretanto, mesmo seguindo a mesma lógica, podemos definir diferentes formas de libertar a bolinha, outra forma bastante eficiente é ao invés de utilizar o comando adicione 20 a x
e adicione -20 a x
, utilizarmos o comando vá para x:0 y:0
. Dessa forma, outra maneira de lidar com o problema é deixar essa parte do código como é mostrado abaixo:
Espero ter ajudado na compreensão do problema. Caso tenha ficado alguma dúvida, sinta-se à vontade em comunicar, estou à disposição!
Caso o problema persista peço que envie o link do seu jogo no Scratch para que eu possa ter acesso ao seu código e assim conseguir analisar de forma mais assertiva o que está acontecendo.
Um forte abraço e bons estudos!