Por que depois de criar uma função movimentaRaqueteDoOponente, a raquete do oponente não fica centralizada?
Segue link do vídeo para ilustrar a minha dúvida: https://youtu.be/z_i1SXC60jk
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Por que depois de criar uma função movimentaRaqueteDoOponente, a raquete do oponente não fica centralizada?
Segue link do vídeo para ilustrar a minha dúvida: https://youtu.be/z_i1SXC60jk
Oi, Matheus! Tudo bem?
Como o yBolinha dentro da função movimentaBolinha() está comentado, não será atribuído um novo valor em loop à essa variável, dessa maneira, seu valor inicial permanecerá constante, ou seja, yBolinha = 200.
Dessa forma, yRaqueteDoOponente = 150 apenas no intervalo de tempo inicial (que é extremamente rápido, mas podemos notar com atenção), após isso, o valor que de yRaqueteDoOponente será definido pela função movimentaRaqueteOponente(), que corresponde ao código abaixo:
function movimentaRaqueteOponente(){
velocidadeYOponente = yBolinha - yRaqueteDoOponente - hRaquete / 2 - 30;
yRaqueteDoOponente += velocidadeYOponente
}Nesse código podemos notar que yRaqueteDoOponente é igual ao seu valor mais o valor de velocidadeYOponente. Podemos então observar que o valor de velocidadeYOponente é 200 - 150 - 90/2 - 30 substituindo as variáveis pelos seus respectivos valores numéricos, que dá -25. Logo, o valor final de yRaqueteDoOponente não é 150 e sim 150 - 25 = 125, por isso a raquete do oponente não está centralizada.
Todavia, para que esse novo valor altere um pouco menos o valor inicial de yRaqueteDoOponente deixo como sugestão a troca de hRaquete por wRaquete, deixando a função movimentaRaqueteOponente() da seguinte maneira:
function movimentaRaqueteOponente(){
velocidadeYOponente = yBolinha - yRaqueteDoOponente - wRaquete / 2 - 30;
yRaqueteDoOponente += velocidadeYOponente
}Espero ter ajudado na compreensão do problema. Caso tenha ficado alguma dúvida, sinta-se à vontade em comunicar, estou à disposição!
Um forte abraço e bons estudos!
Aaah entendi, obrigado pela explicação!