o meu deu certinho mais eu nao entendi direito, alguem pode me dar uma explicação um pouco melhor na hora que o personagem nao pode passar para baixo?
if (keyIsDown(DOWN_ARROW)) { if (PodeSeMover()) { yAtor += 3 } } }
o meu deu certinho mais eu nao entendi direito, alguem pode me dar uma explicação um pouco melhor na hora que o personagem nao pode passar para baixo?
if (keyIsDown(DOWN_ARROW)) { if (PodeSeMover()) { yAtor += 3 } } }
Oi oi, Marcelo! Como você está?
Muito interessante sua dúvida e às vezes algumas coisas se complicam mesmo. Mas o importante é procurar entender tudo, como você está fazendo. Vamos lá!
Essa estrutura condicional possui um SE dentro de um SE (Um if dentro de outro if). Basicamente uma condição está subordinada a outra para ocorrer, vejamos no código;
if (keyIsDown(DOWN_ARROW)) { //Verifique Se a tecla seta para baixo estápressionada
if (PodeSeMover()) // Verifique se a função PodeSeMover() é VERDADEIRA (ou seja, se ela está ocorrendo)
{
yAtor += 3 // execute a instrução que movimenta o ator no eixo y com o valor de + 3
}
}
}
A função pode se mover() retorna um valor e esse valor é a posição do Ator no eixo de y, que precisa ser menor do 366. Sendo assim, se o valor retornado for menor que 366 não será possível executar a instrução que o movimenta pelo eixo de y. Olha o código.
function podeSeMover(){
return yAtor < 366; //aqui o valor retornado é menor que 366, ou seja, o ator precisa estar posicionado abaixo desse limite.
}
Vou deixar aqui uma documentação bem interessante sobre o return em JavaScript; Return MDN
Espero que as informações tenham ajudado, em caso de dúvida fico à disposição!
Um abraço e bons estudos!
entao basicamente essa funcao so vai funcionar se o yAtor for menore que 366 certo? obg