Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Sugestão] Sugestão - Bolinha não ficar presa

Olá! Minha primeira vez sugerindo, espero que eu "faça" certo lol

  1. Primeiro criar uma variável com algum valor:
    let bug = 0
  2. Ir lá na função da colisão da bolinha com a raquete e colocar uma condição para que aconteça a colisão de acordo com a variável bug que criamos:
    function libCollBallRac(x, y) {
    if (bug == 0) {
     colli = collideRectCircle(x, y, widPlaRacket, heiPlaRacket, xBall, yBall, radBall);
     if (colli) {
       souRacket.play()
       velXball *= -1
       miss();
     }
    }
    }
  3. Ir na função da colisão da bolinha com as bordas e somar +1 na variável bug para quando a bolinha acertar os lados:
    function ifBallBorder() {
    if (xBall > width - radBall) {
     velXball *= -1;
     plaPoints += 1;
     souPlaPoints.play();
     bug += 1
    }
    if (xBall - radBall < 0) {
     velXball *= -1;
     comPoints += 1;
     souComPoints.play();
     bug += 1
    }
  4. Criar uma função para que o valor do bug volte para 0 quando a bolinha passar pelo centro:
    function noBugs() {
    if (xBall == 300) {
    bug = 0
    }
    }
  5. Colocar a função noBugs() na function draw().

Espero ter ajudado/acrescentado de alguma forma. Valeu!

2 respostas
solução!

Oi Henrique! Como você está?

Excelente uso da lógica, meus parabéns!

Sua solução foi muito inovadora e tenho certeza que pode ajudar muitas pessoas no fórum. Obrigada por compartilhar conosco.

Continue exercitando sua criatividade!

Forte abraço.

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!
  • Olá Larissa! Tudo certo e tu?
  • Obrigadoo! Espero que ajude mesmo.
  • Sim "Go up and never stop."
  • Abração!
  • Python > ...
  • hehe

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software