Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

duvida, colisão com a raquete,

olá pessoal, estou iniciando na programação e ao tentar programar a colisão da bolinha com a raquete do oponente como foi explicado na aula utilizando o código "ps5collid2d", linha 86 do meu código, a colisão foi desativada para ambas as raquetes e a bolinha atravessa as duas raquetes, se eu desativo o comando de colisão para a raquete do oponente, a bolinha volta colidir apenas com a minha raquete. A forma que encontrei para solucionar o problema foi escrever uma nova função de colisão para a raquete do oponente, porém gostaria de saber se alguém conseguiria me orientar, sobre como ativar a colisão em ambas as raquetes, utilizando a formula apresentada na aula.

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

1 resposta
solução!

Oi, Alessandro! Tudo bem?

Para solucionarmos o problema precisamos ficar atentos se há 2 funções declaradas dentro da função draw(), ou seja, se há duas funções declaradas e chamadas, que executam o mesmo objetivo, pois dessa forma a funcionalidade será executada duas vezes e nesse caso especifico uma anulará a outra, visto que, ao multiplicarmos speedXBall por -1 duas vezes não estamos fazendo alteração alguma em seu valor, já que (-1) * (-1) = 1.

Para isso, recomendo que esteja presente no código apenas a função de colisão que utiliza a biblioteca e que as outras funções que executam o objetivo de verificar a colisão da raquete sejam excluídas ou comentadas, assim como suas declarações dentro da função draw();

Somado a isso, é necessário lembrar que a função collideRectCircle é um comando especifico da biblioteca p5.collide2d.js, logo, a sua escrita/nomenclatura precisa ser exatamente com essa grafia. Dessa forma, recomendo que o comando colisiumRect seja substituido por collideRectCircle .

Caso tenha restado alguma dúvida em relação ao código ou ao conteúdo peço que a envie aqui no fórum, junto ao link do p5, para que eu possa conferir todo o código e elaborar uma melhor resposta e mais específica sobre o problema.

Espero ter ajudado!

Um forte abraço e bons estudos!

Caso este post tenha te ajudado, por favor, marcar como solucionado ✓