1
resposta

Minha Raquete dica colada no canto do cenário

Já alterei como foi visto no vídeo e aderi diversas dicas, mas continua na mesma.

1 resposta

Olá, Mateus! Segue esta solução:

  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!

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