1
resposta

Terceira parte concluida

https://editor.p5js.org/antguithur/full/kclu12OuF

//Variaveis da Bolinha

let xBolinha = 300; let yBolinha = 200; let diametro = 20; let raio = diametro / 2; ** //Variaveis da velocidade da Bolinha**

let velocidadexBolinha = 5; let velocidadeyBolinha = 5;

//Variaveis da Raquete

let xRaquete = 5; let yRaquete = 150; let raqueteLargura = 10; let raqueteComprimento = 90;

//Variaveis do oponente

let xRaqueteOponente = 585; let yRaqueteOponente = 150; let velocidadeyOponente;

//Variaveis placar do jogo

let meusPontos = 0; let pontosDoOponente = 0;

//Variavel utilizada da biblioteca

let colidiu = false;

function setup() {

createCanvas(600, 400); }

function draw() {

background(0); mostrarBolinha(); movimentoBolinha(); verificaColisaoBorda(); mostrarRaquete(xRaquete, yRaquete); mostrarRaquete(xRaqueteOponente, yRaqueteOponente); movimentoRaquete(); movimentoRaqueteOponente(); //verificaColisaoRaquete(); colisaoRaqueteBolinhaBiblioteca(xRaquete, yRaquete); colisaoRaqueteBolinhaBiblioteca(xRaqueteOponente, yRaqueteOponente); incluiPlacar(); marcaPonto(); }

function mostrarBolinha(){

circle(xBolinha, yBolinha, diametro); }

function movimentoBolinha(){

xBolinha += velocidadexBolinha; yBolinha += velocidadeyBolinha; }

function verificaColisaoBorda(){

//Se a bolinha estiver tocando a bordar

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

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

function mostrarRaquete(a, b){

rect(a, b, raqueteLargura, raqueteComprimento); }

function movimentoRaquete(){

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

function verificaColisaoRaquete(){

if(xBolinha - raio < xRaquete + raqueteLargura && yBolinha - raio < yRaquete + raqueteComprimento && yBolinha + raio > yRaquete - raqueteComprimento){ velocidadexBolinha *= -1; } }

function colisaoRaqueteBolinhaBiblioteca(a, b){

colidiu = collideRectCircle(a, b, raqueteLargura, raqueteComprimento, xBolinha, yBolinha, raio);

if(colidiu){ velocidadexBolinha *= -1; } }

function movimentoRaqueteOponente(){

velocidadeyOponente = yBolinha - yRaqueteOponente - raqueteLargura / 2 - 30; yRaqueteOponente += velocidadeyOponente; }

** function incluiPlacar(){**

fill(255);
text(meusPontos, 278, 26);
text(pontosDoOponente, 321, 26);

}

function marcaPonto() {

if (xBolinha > 590) {
    meusPontos += 1;
}
if (xBolinha < 10) {
    pontosDoOponente += 1;
}

}

1 resposta

Fala, Antônio! Tudo bem por aí?

Mandou bem demais, parabéns!

Caso tenha ficado com alguma dúvida não deixe de compartilhar com a gente.

Bons estudos e até mais!