O som da qaquete do oponente fica bugado, fica todo travado
//Variáveis da Bolinha let xBolinha = 300; let yBolinha = 200; let diametro = 20; let raio = diametro / 2;
//Velocidade da Bolinha let velocidadexBolinha = 6; let velocidadeyBolinha = 6;
//variáveis da Raquete let xRaquete = 5; let yRaquete = 150; let raqueteComprimento = 10; let raqueteAltura = 90; let colidiu = false;
//Variáveis do Oponente let xRaqueteOponente = 585; let yRaqueteOponente = 150; let velocidadeyOponente;
//Placar do Jogo let meusPontos = 0; let pontosOponentes = 0;
//sons do jogo let raquetada; let ponto; let trilha;
function preload(){ raquetada = loadSound("raquetada.mp3"); ponto = loadSound ("ponto.mp3") trilha = loadSound("trilha.mp3") }
//tela function setup() { createCanvas(600, 400); trilha.loop(); }
//Draw executador dos comandos. function draw() { background(0); mostraBolinha(); movimentaBolinha(); verificaColisaoBorda(); mostraRaquete(xRaquete, yRaquete); movimentaMinhaRaquete(); verificarColisao(); mostraRaquete(xRaqueteOponente, yRaqueteOponente); movimentaraqueteOponente(); verificarColisaoOponente(); incluiPlacar(); marcaPonto(); }
//comandos 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; } }
//Raquetes comando function mostraRaquete(x, y) { rect(x, y, raqueteComprimento, raqueteAltura); }
function movimentaMinhaRaquete() { if (keyIsDown(UP_ARROW)) { yRaquete -= 10; } if (keyIsDown(DOWN_ARROW)) { yRaquete += 10; } {yRaquete = constrain(yRaquete, 10, 310);} }
//Movimentação Raquete function verificarColisao() { if ( xBolinha - raio < xRaquete + raqueteComprimento && yBolinha - raio < yRaquete + raqueteAltura && yBolinha + raio > yRaquete ) { velocidadexBolinha *= -1; raquetada.play(); } }
function movimentaraqueteOponente() {
velocidadeyOponente = yBolinha - yRaqueteOponente - raqueteComprimento / 2 - 30; yRaqueteOponente += velocidadeyOponente yRaqueteOponente = constrain(yRaqueteOponente, 10, 310); raquetada.play();
}
function verificarColisaoOponente(){ if (xBolinha + raio > xRaqueteOponente && yBolinha - raio< yRaqueteOponente + raqueteAltura && yBolinha + raio > yRaqueteOponente){ velocidadexBolinha *= -1} } function incluiPlacar(){ stroke(255) textAlign(CENTER); textSize (16); fill(color(255, 140, 0)) rect(150,10,40,20); fill(255) text(meusPontos, 170,26); fill(color(255, 140, 0)) rect(450,10,40,20); fill(255) text(pontosOponentes, 470, 26)
}
function marcaPonto(){ if (xBolinha > 590){ meusPontos += 1; ponto.play(); } if (xBolinha < 10){ pontosOponentes += 1 ponto.play();} }