Oi, Natan! Tudo bem?
Para a bolinha reconhecer as bordas do nosso jogo e movimentar-se apenas entre essas extremidades, precisamos colocar os seguintes comandos dentro da função verificaColisaoBorda
, responsável por verifica a colisão entre a bolinha e as bordas do jogo:
function verificaColisaoBorda(){
if (xBolinha + raio> width ||
xBolinha - raio< 0){
velocidadeXBolinha *= -1;
}
if (yBolinha + raio> height ||
yBolinha - raio < 0){
velocidadeYBolinha *= -1;
}
}
Dessa forma, avaliando o eixo x dos nossos atores, se a posição da extremidade direita da bolinha for maior que o valor da largura da tela (extremidade direita da tela) e se a posição da extremidade esquerda da bolinha for menor que 0 (extremidade esquerda da tela), então, a bolinha não ultrapassará essa posição, pois irá inverter o seu sentido, multiplicando a velocidadeXBolinha
por -1.
Algo semelhante acontece avaliando o eixo y, se a posição da extremidade inferior da bolinha for maior que o valor da altura da tela (extremidade inferior da tela) e se a posição da extremidade superior da bolinha for menor que 0 (extremidade superior da tela), então, a bolinha não ultrapassará essa posição, pois irá inverter o seu sentido, multiplicando a velocidadeYBolinha
por -1.
Espero ter ajudado! Qualquer dúvida se sinta à vontade em comunicar, estou à disposição!
Um forte abraço e bons estudos!
Caso este post tenha te ajudado, por favor, marcar como solucionado ✓