1
resposta

[Sugestão] Limitar o movimento do ator no Eixo X.

Boa Tarde pessoal. Essa foi a forma que eu pensei para limitar o movimento do ator no eixo X (funcionou) , gostaria de sugestões para otimizar o código.

function movimentaAtor(){
if (keyIsDown(LEFT_ARROW)){
  if (podeSeMoverXEsquerda()){
  xAtor -=3;
}    }
if (keyIsDown(RIGHT_ARROW)){
  if (podeSeMoverXDireita()){
  xAtor +=3;
}    }    }
  function podeSeMoverXDireita(){
return xAtor < 480;
     }
  function podeSeMoverXEsquerda(){
return xAtor > 0;
  }

bons estudos.

1 resposta

Olá, Pedro, tudo bem?

Testei o seu código e ele está funcionando bem, limitando x do ator. Parabéns!

Quanto a otimização, pode-se inserir a verificação da posição x apta do ator a se movimentar, dentro da função movimentaAtor. Logo após a chamada da função keyIsDown, como no código abaixo:

function movimentaAtor(){
if (keyIsDown(LEFT_ARROW)){
  if (xAtor > 0){
  xAtor -=3;
  }
}
if (keyIsDown(RIGHT_ARROW)){
  if (xAtor < 480){
    xAtor +=3;
  }
}

Apesar do código ficar mais otimizado, a criação das funções podeSeMoverXDireita e podeSeMoverXEsquerda no seu código fica mais legível e funcional, podendo ser alterado mais facilmente caso haja a necessidade.

Espero ter ajudado.

Grande abraço.

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