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

Erro na variável xCarro

Nao sei porque estou com erro ao criar a variavel xCarro. Quando insiro o valor manualmente na funcao mostraCarro() ai aparece no carrinho. Quando chamo a variável xCarro, ai nao aparece. Outra duvida: A funcao movimenta carro é xCarro -2. Nao deveria ser um loop?

https://editor.p5js.org/danilocasabona/sketches/TEN03KkDe

let = imagemDaEstrada; let = imagemDoAtor; let = imagemCarro;

//variaveis do carro 1 let xCarro = 420;

function preload(){ imagemDaEstrada = loadImage("imagens/estrada.png"); imagemDoAtor = loadImage("imagens/ator-1.png"); imagemCarro = loadImage("imagens/carro-1.png"); }

function setup() { createCanvas(500, 400); }

function draw() { background(imagemDaEstrada); mostraAtor(); mostraCarro(); movimentaCarro(); }

function mostraAtor(){ image(imagemDoAtor, 100, 366, 30, 30); }

function mostraCarro(){ image(imagemCarro, xCarro, 40, 50, 40); }

function movimentaCarro(){ xCarro -= 2; }

tks.

6 respostas

Boa tarde Danilo,

você colocou sinais de igual na declaração de tipo da variável:

let = imagemDaEstrada;
let = imagemDoAtor;
let = imagemCarro;

o correto é:

let imagemDaEstrada;
let imagemDoAtor;
let imagemCarro;

Obrigado funcionou. Sabe me dizer a questao do movimenta o carro? Nao deveria ser um loop para ir diminuindo 2 a cada interacao?

Olá Danilo, tudo bem com você?

Eu testei aqui o código no link enviado e funcionou! Você pode mandar a mensagem de erro que o p5js te especificou para a gente dar uma olhada no que pode ter acontecido?

Fico à disposição.

Um grande abraço e bons estudos!

Oi Arthur.

Esta tudo funcionando perfeitamente. Minha unica duvida agora é em relacao a funcao de movimenta o carro que diz:

function movimentaCarro(){ xCarro -= 2; }

na minha cabeça isto deveria ser um loop para rodar varias vezes e a forma que eu entendo é que desta forma só roda uma vez. Acredito que seja como o js funciona....

É a forma como o p5js funciona, a função draw() é um loop, fica rodando indefinidamente até que interrompa a execução.

solução!

Tudo que você quiser que rode repetidamente na sequência deve ser colocado dentro de draw(), por outro lado, as funções que você quer que rode apenas na inicialização devem ser colocadas em setup().

Entretanto, note que essas funções são particulares do p5js, se tentar utilizar com js puro não irá funcionar.