Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Nunca faço ponto no adversário e pontuação dele as vezes não conta

Não estou fazendo pontos no adversário, nunca. Também, as vezes, os pontos do adversário, ao tocar na borda não são computados. Tentei ver várias tópicos de ajuda mas não consegui achar o problema. https://scratch.mit.edu/projects/579582992/

3 respostas
solução!

Olá Marcelo, como vai? Que bacana te encontrar por aqui no fórum!

Seu projeto ficou muito bacana, parabéns!! Esses bugs que estão acontecendo são bem comuns de ocorrerem no Scratch, mas a gente pode fazer algumas alterações pra melhorar o funcionamento do jogo, vou te mostrar:

1 - Ajustando o 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 excluir 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 criar uma nova bolinha

2 - Ajustando do posicionamento 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. Como a bolinha e as raquetes que você tinha feito estavam desenhadas fora do centro estava ajudando a gerar esse bug no seu jogo, mas vou te mostrar como resolver.

  • Para centralizar a bolinha é só ir na aba Fantasias, clicar no ícone de seta para habilitar a seleção, segurar e arrastar a bolinha até que o símbolo de + do centro da bolinha fique exatamente em cima do símbolo de + do centro da área de desenho. Se você não estiver vendo o centro da área de desenho é só ir no botão de diminuir zoom (um desenho de lupa com sinal de -) na parte inferior da área de desenho para enquadrar na tela.

Indicação de como centralizar a bolinha na área de desenho

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 -230 e y valendo 0, ficaria assim:

Indicação de posicionamento da minha raquete

  • Raquete Oponente

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

Indicação de posicionamento da raquete do oponente

Continua na resposta abaixo pois não coube tudo aqui. =D

Continuação da resposta anterior. =D

4 - Ajustando o movimento da raquete do oponente

Depois de fazer essas etapas anteriores seu jogo já vai estar funcionando bem melhor, mas você vai perceber que o jogador não consegue marcar nenhum ponto pois a raquete do oponente sempre acerta a bolinha, isso aconteceu porque mudamos os posicionamentos da bolinha e das raquetes. Para corrigir isso temos que mexer no bloco de código com o valor de movimento da raquete do oponente, aqui eu coloquei o valor de 45 e achei que funcionou bem bacana, mas você pode ir alterando esses valores e ir vendo qual você acha que fica melhor no seu jogo, beleza?

O bloco de código é esse aqui:

Indicação do bloco de códigos onde deve ser alterado o valor de movimento da raquete do oponente

5 - Ajustando a pontuação

Bom, por último vamos fazer duas alterações nos blocos de código de pontuação para que funcione melhor:

  • Como alteramos a bolinha precisamos também corrigir o valor do sensor de pontuação para que ele funcione corretamente para a nova bolinha. Aqui eu testei os valores de -225 para os pontos do oponente e 225 para os meus pontos e funcionou direitinho, mas como esses valores dependem da bolinha que você vai desenhar, você pode personalizá-los, basta chegar a bolinha perto da borda, ver qual o valor e trocar no código, beleza?
  • Outra coisa que podemos fazer é que as vezes a bolinha passar por trás das raquetes e isso faz contar vários pontos de uma só vez, para resolver isso podemos adicionar o controle espere 1 seg nos blocos de código da pontuação. Isso fará com que o jogo espere sempre um segundo antes de computar um novo ponto, resolvendo o bug.

O código ficaria assim:

Indicação dos blocos de código de pontuação depois das alterações

Pronto! Fazendo essas alterações vai corrigir o bug que estava acontecendo e seu jogo vai ficar ainda mais legal! Testa aí e depois me conta o que achou.

Tô curtindo demais acompanhar seu progresso nos estudos e espero ter conseguido te ajudar nesse tópico, se tiver ficado alguma dúvida é só retornar aqui.

Bons estudos por aí e precisando conte com a gente aqui no fórum! =D

 

Caso esta resposta tenha resolvido sua dúvida, por favor, marque o tópico como solucionado ✓.Bons Estudos!

Olá Jeniffer! Que legal falar contigo por aqui! Então, segui todas as suas orientações e acho que deu certo! A bolinha redonda, redonda não sei se está, mas acho que resolveu......rsss Obrigado por me ajudar mais uma vez!

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