let xBola = 300;
let yBola = 200;
let diametro = 23;
let velocidadeXBola = 10;
let velocidadeYBola = 10;
let raio = diametro / 2;
//variáveis da raquete
let xRaquete = 5;
let yRaquete = 150;
let comprimentoRaquete = 10;
let alturaRaquete = 90;
let colidiu = false
//variaveis oponente
let xRaqueteOpo = 585;
let yRaqueteOpo = 150;
let velocidadeYOpo
//placar do game
let meusPontos = 0;
let pontosOponente = 0;
//sons
let raquetada;
let ponto;
let trilha;
function preload () {
trilha = loadSound("trilha.mp3");
ponto = loadSound("ponto.mp3");
raquetada = loadSound("raquetada.mp3");
}
function mostraBola () {
circle(xBola, yBola, diametro);
}
function movimentoBola () {
xBola += velocidadeXBola;
yBola += velocidadeYBola;
}
function movimentoRaquete(){
if (keyIsDown(UP_ARROW)){
yRaquete -= 10;
}
if (keyIsDown(DOWN_ARROW)){
yRaquete += 10;
}
}
function colisaoBorda(){
if (xBola + raio > width || xBola - raio < 0){
velocidadeXBola *= -1
}
if (yBola + raio > height || yBola - raio < 0){
velocidadeYBola *= -1
}
}
function mostraRaquete(x,y){
rect(x, y, comprimentoRaquete, alturaRaquete)
}
function movimentoRaqueteOpo(){
velocidadeYOpo = yBola - yRaqueteOpo - comprimentoRaquete / 2 - 78
yRaqueteOpo += velocidadeYOpo
}
function colisaoRaqueteGit(x,y){
colidiu = collideRectCircle(x, y, comprimentoRaquete, alturaRaquete, xBola, yBola, raio);
if(colidiu){
velocidadeXBola *= -1}
raquetada.play();
}
function colisaoRaqueteGitOpo(x,y){
colidiu = collideRectCircle(x, y, comprimentoRaquete, alturaRaquete, xBola, yBola, raio);
if(colidiu){
velocidadeXBola *= -1}
raquetada.play();
}
function incluiPlacar(){
stroke(255);
textAlign(CENTER);
textSize(16);
fill (color(0,0,128))
rect(150,10,40,20);
fill(255)
text(meusPontos, 170, 26);
fill (color(0,0,128))
rect(450,10,40,20)
fill(255)
text(pontosOponente, 470, 26);
}
function marcaPontos(){
if (xBola > 590){
meusPontos += 1;
}
if (xBola < 12){
pontosOponente += 1;
}
}
function setup() {
createCanvas(600, 400);
trilha.loop();
}
function draw() {
background(0);
mostraBola();
movimentoBola();
colisaoBorda();
mostraRaquete(xRaquete, yRaquete);
movimentoRaquete();
colisaoRaqueteGit(xRaquete, yRaquete);
colisaoRaqueteGitOpo(xRaqueteOpo, yRaqueteOpo);
mostraRaquete(xRaqueteOpo, yRaqueteOpo);
movimentoRaqueteOpo();
incluiPlacar();
marcaPontos();
}