1
resposta

Problemas com o jogo

Oi gente, quando a bolinha bate na raquete, fica indo e vindo infinitamente. Podem me ajudar? https://scratch.mit.edu/projects/590910808/

1 resposta

Olá Felipe, como vai?

Esse é um problema comum de acontecer no Scratch e ele tem origem no formato da bolinha e na falta de centralização dos atores, vou te mostrar como resolver:

1 - Ajuste do formato da bolinha

Pra funcionar mais corretamente no jogo a bolinha precisa ser completamente redonda e a do seu projeto ficou um pouco oval, e isso pode impactar no funcionamento do seu jogo e estar ajudando a gerar esse bug. Pra resolver isso vamos precisar excluir a que está lá e criar uma nova seguindo os passos abaixo:

  • Primeiro selecione o ator Bolinha, vá na aba Fantasias, selecione o desenho da bolinha e depois clique em Apagar.

Indicação de como apagar a bolinha

  • Para criar uma nova bolinha é só clicar no ícone de círculo e para que ela fique no formato redondo é só ficar apertando a tecla shift do teclado ao mesmo tempo que desenha, e pronto, já temos a bolinha com formato corrigido.

Indicação de como desenhar a bolinha redonda

2 - Ajuste de centralização dos atores

No Scratch quando vamos criar um ator é preciso que ele seja criado exatamente centralizado na tela de desenho e que o centro dos dois (ator e tela de desenho) estejam exatamente um no mesmo lugar que o outro. Esses bugs podem ocorrer caso os atores (bolinha e raquetes) sejam desenhados fora do centro.

Vá em Bolinha, depois em Fantasias, clique na sua bolinha e arraste ela para o centro da área de desenho até que os dois +, da bolinha e da área de desenho, se encontrem. Se o centro da área de desenho não estiver aparecendo você pode ir na lupa na parte inferior da área e diminuir o zoom até visualizar.

Indicação de como centralizar a bolinha

Repita esse processo em todos os atores (bolinha e raquetes), eles passarão a ter como referência o centro da tela de desenho e você vai conseguir controlar melhor a posição com o x e o y e não terá mais o problema que estava acontecendo.

3 - Ajustando o posicionamento das raquetes

Depois de centralizar você vai perceber que as raquetes foram pra direções totalmente estranhas, para corrigir isso vamos alterar os valores de x e y nos códigos das raquetes:

  • Minha Raquete

Aqui vamos colocar x valendo -234 e y valendo 0, ficaria assim:

Indicação da minha raquete nos valores acima

  • Raquete Oponente

Aqui vamos passar os valores de x valendo 234 e y valendo 0. Na raquete oponente é importante alterar o valor de x nos dois blocos de código, ficaria assim:

Indicação de posicioanmento da raquete do oponente

Esses valores de -234 e 234 eu identifiquei arrastando as raquetes pra perto da borda até onde achei que ficaria uma posição legal, mas você pode personalizar se preferir, beleza? Só é importante deixar os valores de y em 0 para manter as raquetes centralizadas verticalmente.

4 - Ajustando a pontuação

Depois de fazer essas alterações você vai perceber que seu jogo está contando muitos pontos, isso aconteceu porque quando alteramos o formato da bolinha precisamos ajustar também o sensor do contador de pontos. Aqui vamos fazer dois ajustes:

  • No contador de pontos vamos alterar os valores de x para -225 para os pontos do oponente e o valor de x para 225 para meus pontos. Esses valores eu identifiquei testando no seu jogo e funcionaram legal, mas o ideal é você testar arrastando a bolinha para perto da borda e trocando os valores pois a gente pode ter aumentado a bolinha em tamanhos diferentes, beleza?

  • Outra alteração que vamos fazer aqui é que, mesmo com as modificações acima a bolinha ainda pode passar por trás da raquete e com isso computar vários pontos de uma vez, para solucionar isso vamos inserir o controle espere 1 seg nos blocos de contador de pontos, isso fará com que o jogo sempre espere um segundo antes de contar um novo ponto, solucionando o problema.

O código ficaria assim:

Indicação das alterações nos sensores de pontuação

Pronto! Depois dessas alterações vai corrigir o bug que estava acontecendo, seu jogo volta a funcionar conforme o esperado e vai ficar ainda mais legal. Testa aí depois me conta o que achou.

Espero ter ajudado e se tiver alguma dúvida conte com a gente aqui no fórum.

Bons estudos =)