Usando o collideRectCircle a vaquinha não colide na parte inferior.
Usando o collideRectCircle a vaquinha não colide na parte inferior.
Olá, Kauê! Tudo certo?
Desculpe a demora em responder você! No OFF Topic infelizmente algumas perguntas se perdem :/
Mas vamos lá!
Com a CollideRectRect a colisão realmente fica mais precisa, mas se usarmos os mesmos valores ela não funciona adequadamente. Olha só no código:
function verificaColisao(){
//collideRectCircle(x1, y1, width1, height1, cx, cy, diameter)
for (let i = 0; i < imagemCarros.length; i++){
colisao = collideRectRect(xCarros[i], yCarros[i], comprimentoCarro, alturaCarro, xAtor, yAtor, 30,30)
if (colisao){
voltaAtorParaPosicaoInicial();
somDaColisao.play();
if(pontosMaiorQueZero()){
meusPontos -= 1;
}
}
}
}
A precisão aumenta pois inserimos mais um valor como parâmetro. Mas eu acredito que a melhor forma de identificar a colisão entre atores é criar um Sprite e consumir os seus métodos específicos.
Espero que as informações tenham ajudado você!
Um abraço e bons estudos!