Eu não entendi o porquê de subtrair o "xBolinha" e o "yBolinha" do raio para que, no movimento reverso, a extremidade exata da bolinha colida nas bordas. Compreendi o porquê da soma, mas o porquê da subtração, não.
Eu não entendi o porquê de subtrair o "xBolinha" e o "yBolinha" do raio para que, no movimento reverso, a extremidade exata da bolinha colida nas bordas. Compreendi o porquê da soma, mas o porquê da subtração, não.
Oi, Manuela! Tudo bom contigo?
Para que essa colisão aconteça na direita ele precisa somar o tamanho da bolinha + o raio e se for maior que a largura, retornará.
Agora, para voltar, como os valores são negativos e precisam ser subtraídos, o tamanho da bolinha será subtraído pelo raio e se for menor que zero (negativo) voltará para a direita
if (xBolinha + raio > width || xBolinha - raio < 0) {
velocidadeXBolinha *= -1;
}
Espero ter contribuído, Manuela!!!
Um abraço e bons estudos!!!