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

Ator não retorna ao ponto inicial

Apesar de aparentemente as funções de retonar a posição inicial estarem corretas, o ator não volta. Fiz alguns testes para ver se entram na função e aparentemente funciona, mas na função voltaPosicaoInicial() ele não entra. Outro detalhe, os pontos são computados de 3 em 3

https://editor.p5js.org/cesar.psgjunior/sketches/IbxljOKyo

//Variaveis do ator let yAtor = 368; let xAtor = 100; let tamanhoAtor = 30; let colisao = false; let meusPontos = 0;

function mostraAtor() { image(imagemDoAtor, xAtor, yAtor, 30, 30);

}

function movimentaAtor(){ if (keyIsDown(UP_ARROW)){ yAtor -= 3 print(yAtor) }

if (keyIsDown(DOWN_ARROW)){ yAtor += 3 print(yAtor) } }

function verificaColisao(){ //collideRectCircle(x1, y1, width1, height1, cx, cy, diameter)

for(let i = 0; i < imagemCarros.length; i++){ colisao = collideRectCircle(xCarro[i], yCarro[i], larguraCarro, alturaCarro, xAtor, yAtor, 15 ) if(colisao){ voltaPosicaoInicial(); print(colisao); } }

}

function voltaPosicaoInicial(){ yAtor = 368; print("Voltou")

}

function criaPlacar(){ textAlign(CENTER); textSize(25); fill(color(255,240,60)); text(meusPontos, width / 5, 26); }

function marcaPontos(){ if(yAtor < 15){ meusPontos += 1; voltaPosicaoInicial() print("Chegou final"); } }

2 respostas
solução!

Oi, Cesar

Em "carros.js" tem a função "voltaPosicaoInicial" com o mesmo nome

Então, mude "voltaPosicaoInicial" para "voltaAtorPosicaoInicial"

Caramba, como outros olhando percebem o óbvio. Valeu pela dica deu super certo.

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