//variáveis da Bolinha 
var xBolinha = 300;
var yBolinha = 200;
var diametro = 20;
var raio = diametro/2;
var velocidadeXBolinha = 6;
var velocidadeYBolinha= 6;
//Variáveis da minha Raquete
var xRaquete = 5;
var yRaquete = 150; 
var larguraRaquete = 10;
var alturaRaquete = 90;
//Variáveis do Oponente
var xRaqueteOponente = 585; 
var yRaqueteOponente = 150;
var velocidadeYOponente;
// Variáveis placar jogo
var meusPontos = 0;
var pontosOponente = 0;
// Sons do jogo
var colisao;
var ponto;
var trilha;
function preload(){
  trilha = loadSound("trilha.mp3");
  ponto = loadSound("ponto.mp3");
  colisao = loadSound("raquetada.mp3")
}
var colidiu = false; 
function setup() {
  createCanvas(600, 400);  
  trilha.loop();
}
function draw() {   
  background(0);
  mostraBolinha();
  movimentaBolinha();
  verificaColisaoBorda();
  mostraRaquete(xRaquete, yRaquete);
  mostraRaquete(xRaqueteOponente, yRaqueteOponente)
  movimentaMinhaRaquete();
  //verificaColisaoRaquete()
  verificaColisaoRaquete(xRaquete,yRaquete);
  verificaColisaoRaquete(xRaqueteOponente, yRaqueteOponente);
  movimentaRaqueteOponente();
  incluiPlacar();
  marcaPonto();
}
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, larguraRaquete, alturaRaquete)
}
function movimentaMinhaRaquete(){
  if(keyIsDown(UP_ARROW)){
    yRaquete -= 10;
  }if(keyIsDown(DOWN_ARROW)){
    yRaquete += 10;
  }
}
function verificaColisaoRaquete(){
  if(xBolinha - raio < xRaquete + larguraRaquete && yBolinha - raio < yRaquete + alturaRaquete && yBolinha + raio > yRaquete){
    velocidadeXBolinha *= -1
  }
}
function verificaColisaoRaquete(x,y){
  colidiu = collideRectCircle (x,y,larguraRaquete,alturaRaquete,xBolinha, yBolinha,raio);
    if(colidiu){
      colisao.play();
      velocidadeXBolinha *= -1
    }
}
function movimentaRaqueteOponente(){
  velocidadeYOponente = (yBolinha - yRaqueteOponente - larguraRaquete / 2 - 30);
    yRaqueteOponente += velocidadeYOponente;
}
function incluiPlacar(){
  textAlign(CENTER);
  textSize (16);  
  stroke(255)
  fill(color(255,140,0));
  rect(130, 10, 40, 20);
  fill(color(255,140,0));
  rect(430,10, 40, 20);
  fill("white")
  text(meusPontos, 150,26);
  fill("white")
  text(pontosOponente, 450,26)
}
function marcaPonto(){
  if (xBolinha > 590){
    meusPontos += 1;
    ponto.play();
  }
  if (xBolinha < 10){
    pontosOponente += 1;
    ponto.play();
  }
}