Olá
Estou tendo problemas para pensar em como fazer o tratamento das colisões do game que estou desenvolvendo, o jogo é o pong.
Eu tenho um método que me retorna se há ou não colisão, mas o problema está em desenvolver a lógica para descobrir de que lado vem a colisão. Isto por que estou testando o projeto como se houvesse duas bolas em ação, e as duas podem se rebater, e preciso saber em qual dos lados houve colisão, para efetivamente mudar a direção das bolas.
Este é o método que checa colisão:
public boolean checkCollisionTo(Sprite obj){
if(colisao == false){
if (x > obj.x+SIZE)
return false;
if (x+SIZE < obj.x)
return false;
if (y > obj.y+SIZE)
return false;
if (y+SIZE < obj.y)
return false;
return true;
}
return false;
}
Não sei se esta é a melhor forma de detectar uma colisão, mas preciso da ajuda de vocês.
Obrigado!