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

Ator não movimenta

Bom dia, já conferi todos os os foruns daqui, já até substitui meu código pelo um de uns monitores, mas o ator continua sem funcionar. A função UP_ARROW permanece em vermelho https://editor.p5js.org/tatianambmorais/sketches/OqmTNz_94

3 respostas
solução!

Luan, tenta substituir dentro da função mostraAtor() o número 366 por yAtor, da mesma forma que vc fez com o xCarro. Vai funcionar!

Oi Luan, eu estava dando uma olhada aqui nos seus códigos, fiz algumas substituições e consegui movimentar o seu ator fazendo refatoração, vou colar o código aqui.

//Variável Ator
let yAtor = 368;
let xAtor = 100;
let comprimentoAtor = 30;
let alturaAtor = 30;

let imagemDaEstrada;
let imagemDoAtor;
let imagemCarro;

//Variável carro
let xCarro = 600;

//Função carregamento de imagens
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();
  movimentaAtor();

//Função para mostrar ator
function mostraAtor(){
 image(imagemDoAtor, xAtor, yAtor, comprimentoAtor,  alturaAtor)}
}
function mostraCarro(){
 image(imagemCarro, xCarro, 40, 50, 40);
}
function movimentaCarro(){
 xCarro -= 2;
}

//Função para movimentar ator
function movimentaAtor(){
  if (keyIsDown(UP_ARROW))
    yAtor -= 2;
  if (keyIsDown(DOWN_ARROW))
    yAtor += 2;
  if (keyIsDown(LEFT_ARROW))
    xAtor -= 2;
  if (keyIsDown(RIGHT_ARROW))
    xAtor += 2;
}

Pessoal, depois de muita pesquisa achei uma pergunta aqui onde a dúvida se respondeu: o problema não estava no código em si, mas precisava clicar o mouse no background do jogo pra que o ator andasse. Muito obrigada pelas resposta https://cursos.alura.com.br/forum/topico-up_arow-e-down_arrow-nao-reconhece-171152