Boa tarde Anderson, tudo bem?
- 'agora meus pontos não sobem nem descem, chego ao outro lado e retorno pro inicio sem ponto,':
Testei seu código aqui. Vi que, na verdade, os pontos estão subindo corretamente quando o ator chega na calçada. Mas, de fato, quando o ator é atingido pelo carro, os pontos não estão descendo em 1 unidade.
Para funcionar, é preciso adicionar uma função, que tira 1 ponto do ator, com nome de, por exemplo, "tirarPontoDoAtor".
Seu código está assim agora
function verificaColisao(){
for (i = 0; i < imagemCarros.length; i = i + 1){
colidiu = collideRectCircle(xCarros[i], yCarros[i], comprimentoCarros, alturaCarros, xAtor, yAtor, comprimentoAtor/2);
if (colidiu){voltaAoInicio();}
}
}
Sugestão:
function verificaColisao(){
for (i = 0; i < imagemCarros.length; i = i + 1){
colidiu = collideRectCircle(xCarros[i], yCarros[i], comprimentoCarros, alturaCarros, xAtor, yAtor, comprimentoAtor/2);
if (colidiu){
tirarPontoDoAtor(); // chamada para uma nova função a ser criada
voltaAoInicio();
}
}
}
Sendo que nesta nova função, 'tirarPontoDoAtor', precisará verificar se a variável meusPontos > 0. Se sim, retirará 1 ponto de ator.