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

Pink Pong ^^

https://editor.p5js.org/nad.schuster/full/-2afkV5ga

//variaveis da bolinha let xBolinha = 300; let yBolinha = 200; let diametro = 15; let raio = diametro / 2;

//velocidade da bolinha let velocidadexBolinha = 7; let velocidadeyBolinha = 7;

//variaveis da raquete let xRaquete = 5; let yRaquete = 150; let comprimentoRaquete = 8; let alturaRaquete = 80;

//variaveis do adversario let xRaqueteAdversario = 585; let yRaqueteAdversario = 150; let velocidadeYAdversario;

let colidiu = false;

//placar jogo let meusPontos = 0; let pontosAdversario = 0;

//sons do jogo let raquetada; let ponto; let trilha;

let chanceDeErrar = 0;

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

function setup() { createCanvas(600,400); trilha.loop(); }

function draw() { background(0); mostraBolinha(); movimentaBolinha(); verificaColisaoBorda(); mostraRaquete (xRaquete, yRaquete); movimentaMinhaRaquete (); //verificaColisaoRaquete (); verificaColisaoRaquete(xRaquete, yRaquete); mostraRaquete(xRaqueteAdversario, yRaqueteAdversario); movimentaRaqueteAdversario(); verificaColisaoRaquete(xRaqueteAdversario, yRaqueteAdversario); incluiPlacar(); marcaPontos(); }

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 (x, y){ rect (x, y, comprimentoRaquete, alturaRaquete); }

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

function verificaColisaoRaquete (){ if (xBolinha - raio < xRaquete + comprimentoRaquete && yBolinha - raio < yRaquete + alturaRaquete && yBolinha + raio > yRaquete){ velocidadexBolinha *= -1 raquetada.play(); }}

function verificaColisaoRaquete(x, y){ colidiu =collideRectCircle(x, y, comprimentoRaquete, alturaRaquete, xBolinha, yBolinha, raio); if (colidiu){ velocidadexBolinha *= -1 raquetada.play(); } }

function movimentaRaqueteAdversario (){ velocidadeYAdversario = yBolinha - yRaqueteAdversario - comprimentoRaquete / 2 - 30; yRaqueteAdversario += velocidadeYAdversario + chanceDeErrar calculaChanceDeErrar(); }

function incluiPlacar(){ stroke(255,20,147) textAlign(CENTER); textSize(18); fill(color(220,220,220)) rect(150, 10, 40, 20); fill(255,20,147); text(meusPontos, 170, 26); fill(color(220,220,220)) rect(450, 10, 40, 20); fill(255,20,147); text(pontosAdversario,470, 26);

}

function marcaPontos(){ if (xBolinha > 590){ meusPontos += 1; ponto.play(); } if (xBolinha < 10){ pontosAdversario += 1; ponto.play(); } }

function calculaChanceDeErrar() { if (pontosAdversario >= meusPontos) { chanceDeErrar += 1 if (chanceDeErrar >= 39){ chanceDeErrar = 40 } } else { chanceDeErrar -= 1 if (chanceDeErrar <= 35){ chanceDeErrar = 35 } } }

function calculaChanceDeErrar() { if (pontosAdversario >= meusPontos) { chanceDeErrar += 1 if (chanceDeErrar >= 39){ chanceDeErrar = 40 } } else { chanceDeErrar -= 1 if (chanceDeErrar <= 35){ chanceDeErrar = 35 } } }

1 resposta
solução!

Nadine sempre demonstrando ser ótima aluna!!!

Ficou lindo, Nadine!

Adorei o nome alternativo do Pong também, o match perfeito!

Parabéns pelas customizações e continue engajada!

Um grande abraço e até breve!

Bons estudos!