1
resposta

[Projeto] Exercicio topico 3 resolvido

// Variaveis da Bolinha
let xBolinha = 300;
let yBolinha = 200;
let diametro = 15;
let raio = diametro / 2;

// Variaveis da Raquete
let xRaquete = 5;
let yRaquete = 150;
let raqueteComprimeto = 10;
let raqueteAltura = 90;

// Velocidade da Bolinha
let velocidadeXBolinha = 5;
let velocidadeYBolinha = 5;

let colidiu = false;

function setup() {
  createCanvas(600, 400);
}

function draw() {
  background(0);
  mostraBolinha();
  movimentaBolinha(); 
  verificaColisaoBorda();
  mostraRaquete();
  movimentaMinhaRaquete();
  //verificaColisaoRaquete();
  colisaoMinhaRaqueteBiblioteca();

}

function mostraBolinha (){
  circle(xBolinha, yBolinha, diametro);
}

function movimentaBolinha (){
  xBolinha += velocidadeXBolinha;
  yBolinha += velocidadeYBolinha;
}

function verificaColisaoBorda(){
    if (xBolinha + raio > width ||
      xBolinha - raio < 0 ) {
    velocidadeXBolinha *= -1; 
  }  

  if (yBolinha + raio > height || yBolinha - raio < 0){
    velocidadeYBolinha *= -1
  }
}

function mostraRaquete(){
  rect ( xRaquete, yRaquete, raqueteComprimeto, raqueteAltura)
}

function movimentaMinhaRaquete(){
  if (keyIsDown (UP_ARROW)) {
    yRaquete -= 10;
  }
   if (keyIsDown (DOWN_ARROW)) {
    yRaquete += 10;
  }

}

function verificaColisaoRaquete(){
  if (xBolinha - raio < xRaquete + raqueteComprimeto && 
       yBolinha - raio < yRaquete + raqueteAltura &&
       yBolinha + raio > yRaquete){
    velocidadeXBolinha *= -1;
  }
}

function colisaoMinhaRaqueteBiblioteca(){
  colidiu = collideRectCircle(xRaquete, yRaquete, raqueteComprimeto, raqueteAltura, xBolinha, yBolinha, raio);
  if (colidiu){velocidadeXBolinha *= -1;}
}
1 resposta

Olá Caio, tudo bem?

Seu game está ganhando forma, e seu código está bem fácil de entender, isso demonstra a sua organização, meus parabéns!

Continue se dedicando e se empenhando aos seus estudos, hoje você faz um jogo, no amanhã podem ser jogos ou aplicações cada vez mais robustas, além da infinidade de coisas que esse mundão da programação permite, por conta disso conte sempre com a Alura para te ajudar a dar vôos cada vez mais altos.

Quando as dúvidas surgirem, conte sempre com o fórum da comunidade Alura.

Sucesso

Um grande abraço e até mais!