//variaveis da bolinha
let xBolinha=300;
let yBolinha=200;
let diametro=15;
let raio=diametro/2;
//velocidade da bolinha
let velocidadeXBolinha=2;
let velocidadeYBolinha=2;
//variaves da raquete
let xRaquete=1;
let yRaquete=150;
let raqueteComprimento=10;
let raqueteAltura=90;
let colisao=false;
//variaveis placar do jogo
let meusPontos=0;
let pontosDoOponente=0;
//variaveis raquete oponente
let xRaqueteOponente=589;
let yRaqueteOponente=150;
let raqueteComprimentoOponente=10;
let raqueteAlturaOponente=90;
let velocidadeYOponente;
//sons do jogo
let raquetada;
let ponto;
let trilha;
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();
verificaBolinha();
mostraRaquete(xRaquete,yRaquete);
mostraRaquete(xRaqueteOponente,yRaqueteOponente);
movimentaRaquete();
//verificaRaquete();
verificaColisaoRaquete(xRaquete,yRaquete);
//movimentaRaqueteOponente();
verificaColisaoRaquete(xRaqueteOponente,yRaqueteOponente);
incluiPlacar();
marcaPonto();
}
function mostraBolinha(){
circle(xBolinha,yBolinha,diametro);
}
function movimentaBolinha(){
xBolinha += velocidadeXBolinha;
yBolinha += velocidadeYBolinha;
}
function verificaBolinha(){
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,raqueteComprimento, raqueteAltura)
}
function movimentaRaquete(){
if(keyIsDown(UP_ARROW)){
yRaquete-=10;
}
if(keyIsDown(DOWN_ARROW)){
yRaquete+=10;
}
}
/*function verificaRaquete(){
if(xBolinha - raio < xRaquete + raqueteComprimento&&yBolinha-raio<yRaquete+raqueteAltura&&yBolinha+raio>yRaquete){
velocidadeXBolinha*=-1;
}
}*/
function verificaColisaoRaquete(x,y){
colisao =
collideRectCircle(x, y, raqueteComprimento, raqueteAltura, xBolinha, yBolinha, raio);
if(colisao){
velocidadeXBolinha*=-1;
raquetada.play();
}
}
function movimentaRaqueteOponente(){
velocidadeYOponente = yBolinha -yRaqueteOponente-raqueteComprimento/2-30;
yRaqueteOponente += velocidadeYOponente;
}
function incluiPlacar(){
stroke(255);
textAlign(CENTER);//alinhamento centralizado;
textSize(18);//tamanho da fonte do texto;
fill(color(255,140,0));// cor do retangulo;
rect(150,10,40,20);
fill(255);
text(meusPontos,165,26);
fill(color(255,140,0));
rect(450,10,40,20);
fill(255); text(pontosDoOponente,465,26);
}
function marcaPonto(){
if(xBolinha>593){
meusPontos +=1;
ponto.play();
}
if(xBolinha<7){//se deixar 10 ele triplica o valor dos pontos
pontosDoOponente +=1;
ponto.play();
}
}