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

Por que não soma a altura da raquete no final?

Por que no final do código ( && yBolinha + raio > yRaquete1) não somamos a altura da raquete, informamos apenas a posição do Y?

function verificaColisaoRaquete1(){

  if(xBolinha - raio < xRaquete1 + larguraRaquete 
     && yBolinha - raio < yRaquete1 + alturaRaquete
      && yBolinha + raio > yRaquete1){

    velocidadeBolinhaX *= -1
  }
1 resposta
solução!

Fala, Anderson! Tudo bem contigo?

Desculpe a demora em dar um retorno

O que acontece nessa lógica acaba "não sendo" uma soma ou subtração o foco e sim achar um ponto exato conforme as comparações entre cada operador lógico &&'s.

Dentro desse ifexiste as seguintes comparações:

  if(xBolinha - raio < xRaquete1 + larguraRaquete 
//xBolinha menos o raio é menor que xRaquete1 mais larguraRaquete?
     && yBolinha - raio < yRaquete1 + alturaRaquete
//yBolinha menos raio é menor que yRaquete1 mais alturaRaquete?
      && yBolinha + raio > yRaquete1){
//yBolinha mais raio é maior que yRaquete1?
//Caso todas essas afirmações acima sejam verdadeiras...

    velocidadeBolinhaX *= -1
//...multiplique velocidadeBolinhaX vezes menos 1 para que a bolinha volte
  }

O cálculo existe sim!!! Porém é só para saber se colidiu ou não com a raquete!

Espero ter contribuído, Anderson!

Um abraço e bons estudos