//Bolinha Tamanho
let = xBolinha = 300
let = yBolinha = 200
let = diametro = 20
let = raio = diametro / 2
//Bolinha Velocidade
let = velocidadeXBolinha = 7
let = velocidadeYBolinha = 7
//Raquete Tamanho
let = xRaquete = 5
let = yRaquete = 150
let = larguraRaquete = 20
let = alturaRaquete = 110
//Raquete Oponente
let = xRaqueteOponente = 575
let = yRaqueteOponente = 150
let = velocidadeYOponente =
//Sons
let = raquetada =
let = ponto =
let = trilha =
//Chanche de errar
let = chanceDeErrar = 0
//Biblioteca
let = colidiu = false
//Placar
let = pontosMeus = 0;
let = pontosOponente = 0;
function setup() {
createCanvas(600, 400);
trilha.loop();
}
function draw() {
background(0);
bolinha();
movimentosBolinha();
colisaoBorda();
tamanhoRaquete(xRaquete, yRaquete);
tamanhoRaquete(xRaqueteOponente, yRaqueteOponente);
movimentosRaquete();
//colisaoRaquete();
movimentarRaqueteOponente();
colisaoBiblioteca(xRaquete, yRaquete);
colisaoBiblioteca(xRaqueteOponente, yRaqueteOponente);
mostrarPlacar();
marcarPonto();
//preload();
calculaChanceDeErrar();
//correçaoDeBugs();
}
function bolinha(){
circle(xBolinha, yBolinha, diametro)
}
function movimentosBolinha(){
xBolinha += velocidadeXBolinha
yBolinha += velocidadeYBolinha
}
function colisaoBorda(){
if (xBolinha + raio > width ||
xBolinha - raio < 0){
velocidadeXBolinha *= -1
}
if (yBolinha + raio > height ||
yBolinha - raio< 0){
velocidadeYBolinha *= -1
}
}
function tamanhoRaquete(x, y){
rect(x, y, larguraRaquete, alturaRaquete)
}
function movimentosRaquete(){
if (keyIsDown(UP_ARROW)){
yRaquete -= 10
}
if (keyIsDown(DOWN_ARROW)){
yRaquete += 10
}
}
function movimentarRaqueteOponente(){
velocidadeYOponente = yBolinha - yRaqueteOponente - alturaRaquete ;
yRaqueteOponente += velocidadeYOponente + chanceDeErrar
calculaChanceDeErrar();
}
function colisaoRaquete(){
if (xBolinha - raio < xRaquete + larguraRaquete
&& yBolinha - raio < yRaquete + alturaRaquete
&& yBolinha + raio > yRaquete - alturaRaquete
){
velocidadeXBolinha *= -1
raquetada.play();
}
}
function colisaoBiblioteca(x, y){
colidiu = collideRectCircle(x, y, larguraRaquete, alturaRaquete, xBolinha, yBolinha, diametro);
if (colidiu){
velocidadeXBolinha *= -1
raquetada.play();
}
}
function correçaoDeBugs(){
if (yRaquete > 0 &&
yRaquete + alturaRaquete < 400){
if (keyIsDown(UP_ARROW)){
yRaquete -= 10
}
if (keyIsDown(DOWN_ARROW)){
yRaquete += 10
}
if (yRaquete < 0){
yRaquete += 1
}
if (yRaquete + alturaRaquete > 400){
yRaquete -= 1
}
}
}
function correçaoDeBugs(){
if(yRaquete > 0 &&
yRaquete + alturaRaquete < 400) {
if (keyIsDown(UP_ARROW)) {
yRaquete -= 10;
};
if (keyIsDown(DOWN_ARROW)) {
yRaquete += 10;
};
}
if(yRaquete <= 0) {
yRaquete += 1; }
if(yRaquete + alturaRaquete >= 400) {
yRaquete -= 1; }
}
function mostrarPlacar(){
textAlign(CENTER);
textSize(16);
fill(color(0, 128, 0))
rect(430, 10, 40, 20);
fill(255)
text(pontosOponente, 450, 26)
fill(color(0, 128, 0))
rect(129, 10, 40, 20);
fill(255)
text(pontosMeus, 150, 26)
}
function marcarPonto(){
if (xBolinha + raio > 600){
pontosMeus += 1
ponto.play();
}
if (xBolinha - raio < 0){
pontosOponente += 1
ponto.play();
}
}
function preload(){
trilha = loadSound("trilha.mp3")
raquetada = loadSound("raquetada.mp3")
ponto = loadSound("ponto.mp3")
}
function calculaChanceDeErrar() {
if (pontosOponente >= pontosMeus) {
chanceDeErrar += 50
}
if (chanceDeErrar >= 50){
chanceDeErrar = 100
}
else {
chanceDeErrar -= 1
if (chanceDeErrar <= 100){
chanceDeErrar = 100
}
}
}