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

Colisão da Bolinha com a Raquete

Estou tentando achar onde que eu errei na parte de construção da Bolinha, pois estou a 1 hora tentando achar meu erro, mas não acho, já refiz o código diversas vezes, mas ainda não consegui resolver. Segue foto do código Insira aqui a descrição dessa imagem para ajudar na acessibilidade

OBS: Está em ingês para eu ampliar meu conhecimento sobre a lingua

3 respostas

Olá Gabriel,

Na sua função PlayerCollision está desse jeito.

function playerCollision(){
    if(xBall - raio < xRect + wRect & yBall - raio < yRect + hRect) {

    }
}

Porém o & comercial deve ser duplo, desta forma:

function playerCollision(){
    if(xBall - raio < xRect + wRect && yBall - raio < yRect + hRect) {

    }
}

E também faltou uma outra verificação da bola acertando a parte de cima da raquete, ficaria assim:

function playerCollision(){
    if(xBall - raio < xRect + wRect && yBall - raio < yRect + hRect && yBall + raio > yRect) {

    }
}

Cara, não funcionou, a bolinha passa reto

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

solução!

Olá Gabriel!

Isso porque dentro do IF você precisa implementar a lógica de fazer a polinha mudar de direção. Para isso o código ficará:

function playerCollision(){
    if(xBall - raio < xRect + wRect && yBall - raio < yRect + hRect && yBall + raio > yRect) {
        velocityXball *= -1
    }
}

Igual você fez na função ballColision.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software