1
resposta

o que há de errado?

Alguém poderia me ajudar a arrumar o programa? Está igual o do professor, mas fica dando erro, não sei mais o que fazer. https://editor.p5js.org/programadoranew/sketches/4KLs63d9n

1 resposta

Oi Giovana!!! Há muitas coisas erradas.

Vamos por parte!! cód carros: tirei o "s " de xCarros e velocidadeCarros! tens que criar as variáveis para xCarro2 e xCarro3 e velocidadeCarro2 e 3 tambem. Perceba que como este xCarro recebe atributos. Uma dica aqui, seria deixa a velocidadeCarro sem o número 1, já que xCarro também não tem número, fica mais coeso.

let xCarro  = 600;
let yCarro  = 40;
let velocidadeCarro1  = 2;

Os outros xCarros, também precisam de atributos

na função voltaposiçãoInicial , tens que add os outros carros, como só tem o xCarro, somente ele fica no loop. faça um if para cada carro. Fique atenta as chaves, não exceda nem deixe faltar!!!

no sketch: Eu simplesmente comentei estas duas funções, pq como vc não tinha colocado os carro, não fazia sentido vc ter placar. Deixei pra vc, depois que corrigir esses detalhes, já que isso é mais de cada um, o estilo que vai ficar o placar, retire o comentário e confira se funciona.

cód ator: Comece eliminando estas duas variáveis, vc já as declarou no código do carro! Perceba que retirei do código do carro, mas foi só pra ter certeza, deixe no código do carro e elimine no código do ator.

let comprimentoCarro = 50; let alturaCarro = 40

na função colisão, retirei o "s" dos xCarros

Olha só, vou lhe dar uma dica!! Você não deveria escrever todo este código sem testá-lo. Isso foge a qualquer princípio de qualquer empresa nos dias atuais. Você já ouviu falar sobre os métodos ágeis? Se não ouviu nada sobre, sugiro a vc usar a busca aqui do site, acho que a do fórum não. Vá para a página inicial da Alura e faça um pesquisa de cursos sobre a metodologia ágil. Por que eu estou dizendo isso? Porque, seria mais prudente você escrever o seu código e testar sempre. Eu gastei pelo menos uns 50 minutos pra corrigi-lo. Por acaso, eu gosto de fazer isso... Mas imagine isso numa empresa? O tempo dispensado nisso. Por exemplo: O curso mostra como add as imagens. Feito isso, teste!! Mostra como movimentar os carros. Feito isto, teste-os!! Mostra como colocar mais carros. Colocou mais carros, teste!! E assim a vida continua. Fazer e testar, e sabe por quê? Porque isso gera menos trabalho, menor custo, e mais fácil de encontrar os possíveis erros e concluímos o que foi passado na aula. Seria como se cumpríssemos com nosso trabalho numa empresa, e ainda testamos o que fizemos. Agora, imagine seu time , esperando o seu código que não foi testado nenhuma vez, pq vc simplesmente escreveu, e escreveu, sem saber se havia algum erro, e quanto maior fica o código, mais tempo leva, para conferir.

Ok, código funciona perfeitamente seguindo as imagens que postei. Lembre-se que não mexi em: incluiPontos(); marcaPonto();

Peço imensas desculpas porque eu atualizei o editor, e não havia copiado o código corrigido, para postar aqui, mas ao menos as prints, eu salvei.

Espero ter ajudado, e não lhe aborrecido com o que eu disse. Se precisar de ajuda, é só postar!! Bons estudos!!