Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Feito - Pong

https://editor.p5js.org/maro3510/full/ZCoUi_Kun

//PROPRIEDADE DA QUADRA
let xTamanho = 600
let yTamanho = 400

//PROPRIEDADES DA RAQUETE
let xRaquete = 5;
let alturaRaquete = 70;
let yRaquete = 200 - alturaRaquete/2;
let larguraRaquete = 10;
let arestasRaquete = 45;
let velocidadeRaquete = 10;
//let xRaqueteMaisLarguraRaquete = xRaquete + larguraRaquete; 
//let yRaqueteMaisAlturaRaquete = yRaquete + alturaRaquete;

//PROPRIEDADES DA RAQUETE INIMIGA
let xRaqueteInimiga = 600 - 5 - larguraRaquete;
let yRaqueteInimiga = 200 - alturaRaquete/2;

//PROPRIEDADES DA BOLINHA
let xBolinha = 300;
let yBolinha = 200;
let diametroBolinha = 15;
let raioBolinha = diametroBolinha / 2;
//let xBolinhaMenosRaioBolinha = xBolinha - raioBolinha;
//let yBolinhaMenosRaioBolinha = yBolinha - raioBolinha;
//let yBolinhaMaisRaioBolinha = yBolinha + raioBolinha;

//AÇOES DA BOLINHA
let velocidadeXBolinha = 6;
let velocidadeYBolinha = 6;

//PROPRIEDADES DO PLACAR
let meusPontos = 0;
let posicaoXMeusPontos = xTamanho/2-60
let pontosOponente = 0;
let posicaoXPontosOponente = xTamanho/2+60

//SONS DO JOGO
let raquetada;
let ponto;
let trilha;

function preload(){
  raquetada = loadSound("raquetada.mp3");
  ponto = loadSound("ponto.mp3");
  trilha = loadSound("trilha.mp3");
}

let colisao = false;

function setup() {
  createCanvas(xTamanho, yTamanho);
  trilha.loop();
}

function draw() {
  background(50);
}

function draw(){
  background(0);
  propriedadesDaBolinha();
  moverBolinha();
  colisaoDaBolinha();
  mostrarRaquete(xRaquete, yRaquete);
  mostrarRaquete(xRaqueteInimiga, yRaqueteInimiga);
  movimentoRaquete();
  movimentoRaqueteInimiga();
  //verificaColisaoRaquete();
  verificaColisaoBolinhaBiblioteca(xRaquete, yRaquete);
  verificaColisaoBolinhaBiblioteca(xRaqueteInimiga, yRaqueteInimiga)
  incluiPlacar(posicaoXMeusPontos, meusPontos);
  incluiPlacar(posicaoXPontosOponente, pontosOponente)
  marcaPonto();
}

function propriedadesDaBolinha(){  
  circle(xBolinha, yBolinha, diametroBolinha);
}

function moverBolinha(){
  xBolinha += velocidadeXBolinha
  yBolinha += velocidadeYBolinha
}

function colisaoDaBolinha(){
  if (xBolinha + raioBolinha > width||
     xBolinha - raioBolinha < 0){
    velocidadeXBolinha *= -1
  }

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

function mostrarRaquete(x, y){
  rect(x , y, larguraRaquete, alturaRaquete, arestasRaquete)
}  

function movimentoRaquete(){
  if (keyIsDown(UP_ARROW)){
    yRaquete -= velocidadeRaquete;
  }
  if (keyIsDown(DOWN_ARROW)){
    yRaquete += velocidadeRaquete; 
  }
}

function movimentoRaqueteInimiga(){
  yRaqueteInimiga = yBolinha
}

function verificaColisaoRaquete(){
  if (xBolinha - raioBolinha < xRaquete + larguraRaquete
    && yBolinha - raioBolinha < yRaquete + alturaRaquete
    && yBolinha + raioBolinha > yRaquete) {
    velocidadeXBolinha *= -1;
  }
}

function verificaColisaoBolinhaBiblioteca(x, y){
  colisao = 
    collideRectCircle(x, y, larguraRaquete, alturaRaquete, xBolinha, yBolinha, raioBolinha);
  if (colisao){
    velocidadeXBolinha *= -1;
    raquetada.play()
  }
}

function incluiPlacar(posicaoXPontos, pontos){
  stroke(255)
  textSize(17)
  fill(139,0,0)
  rect(posicaoXPontos - 9, 14, 30, 20, 20)
  fill(255)
  text(pontos, posicaoXPontos, 30)
}
function marcaPonto(){
  if (xBolinha < 10){
    pontosOponente += 1
    ponto.play()
  }
  if (xBolinha > xTamanho - 10){
    meusPontos += 1
    ponto.play()
  }
}
1 resposta
solução!

Oi oi, Mauricio! Tudo certo?

Parabéns pela finalização do projeto e também gostaria de parabenizá-lo pelos comentários no seu jogo. Esse detalhe deixou seu código muito mais legível e pode levar essa prática para sua jornada como desenvolvedor porque irá ajudá-lo muito!

As customizações ficaram muito legais também!

Um abraço e bons estudos!!!