1
resposta

Continuacao Pong

//parametros bolinha
let xBolinha = 400;
let yBolinha = 200;
let diametro = 22;
let raio = diametro /2

// velocidade bolinha 
let vlxb = 5  
let vlyb = 5


// Parametros Raquete 

let xRe = 5
let yRe = 155 
let cRe = 15
let lRe = 90 

//librarie
let collide = false 

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

function draw() {
  background(0)
  showcircle();
  movcircle();
  cborda();
  raqueteEsq();
  movRaqEsq();
  //cRaq();
  collide2d();

}

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

 function movcircle(){
  xBolinha = xBolinha + vlxb;
  yBolinha = yBolinha + vlyb;
}
 function cborda(){
   if (xBolinha + raio > width || xBolinha - raio <0)
       vlxb*=-1;

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

function raqueteEsq () { 
rect(xRe, yRe, cRe, lRe );
} 

function movRaqEsq(){
if (keyIsDown(UP_ARROW)) {yRe -=8 ;}
if (keyIsDown(DOWN_ARROW)) {yRe +=8;}
}


 function cRaq(){
if (xBolinha - raio < xRe + cRe
&& yBolinha - raio < yRe + lRe
&& yBolinha + raio > yRe ) {
vlxb *=-1 
}}

function collide2d() {
  // calculo variavel 
   collide =  collideRectCircle(xRe, yRe, cRe, lRe , xBolinha, yBolinha, diametro);
  // operacao 
   if (collide){
     vlxb*=-1
   }
}

1 resposta

Olá, Gustavo. Tudo bem com você?

Muito bom o seu projeto! Parabéns pelo engajamento e também pelas customizações.

Percebi que você alterou alguns valores e sugiro que permaneça bastante atento aos próximos passos, pois certamente precisará modificar também os demais valores para que a lógica funcione perfeitinha!

Também é excelente você procurar deixar o código com a sua cara, apenas recomendo que nomeie as variáveis de forma legível e intuitiva para que outros programadores possam compreender seu código. Essa prática é entendida como algo fundamental na área de programação e vai te ajudar muito futuramente!

Um abraço e já fico na expectativa para acompanhar seu projeto final!

Bons estudos!