1
resposta

Return

Gostaria de entender porque a função abaixo não aceita a condição && yAtor > 368, para o ator não poder ir abaixo do y 368?

function movimentaAtor(){
  if(keyIsDown(UP_ARROW)){
    yAtor -= 3
  }
  if(keyIsDown(DOWN_ARROW && yAtor > 368)){
    yAtor += 3
  }
}
1 resposta

Opa Eduardo, tudo bem com você?

Agradeço a sua paciência em aguardar a sua resposta.

Eu tomei liberdade para editar a sua pergunta para ficar mais fácil a visualização do código da dúvida.

E deixo como dica para quando for compartilhar o seu código dentro do fórum siga esses passos para que fique mais claro a visualização dele.

  1. Copie seu código e cole dentro da sua pergunta no fórum.

  2. Aqui no fórum, procure o ícone </>. É a sétima opção na aba superior do nosso editor de texto.

  3. E então com o seu código selecionado clique no ícone informado anteriormente, assim o seu código vai ser formatado.

E voltando a sua dúvida, não é possível inserir essa condição dessa forma, pelo fato de que você adicionou ela como um parâmetro da função keyIsDown():

if(keyIsDown(DOWN_ARROW && yAtor > 368)){
    yAtor += 3
  }

E a forma correta de aplicar a condição e usar a função keyIsDown() no mesmo if seria assim:

if (keyIsDown(DOWN_ARROW) && yAtor < 368) {
      yAtor += 3; 
  }

Porém eu fiz uma pequena alteração na sua condição, mudando o sinal de (maior que) > para (menor que) <. Pois, caso o código rodasse na forma anterior o ator não iria para baixo.

Caso tenha mais dúvidas estarei a sua disposição. Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado! ✓.

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