xxxxxxxxxx
142
// Variáveis da bola
let xBolinha = 400;
let yBolinha = 300;
let diametro = 30;
let raio = diametro / 2;
// Velocidade da bola
let velocidadeXBolinha = 10;
let velocidadeYBolinha = 10;
// Variáveis da Raquete
let xRaquete = 15;
let yRaquete = 250;
let raqueteComprimento = 15;
let raqueteAltura = 130;
let colisao = false;
// Variáveis da Raquete do Oponente
let xRaqueteOponente = 775;
let yRaqueteOponente = 250;
let velocidadeYOponente;
let chanceDeErrar = 0;
// Placar
let meusPontos = 0;
let pontosOponente = 0;
// Sons do Jogo
let trilha;
let raquetada;
let ponto;
function preload(){
trilha = loadSound ("trilha.mp3");
raquetada = loadSound ("raquetada.mp3");
ponto = loadSound ("ponto.mp3");
}
function setup() {
createCanvas(800, 600);
trilha.loop();
}
function draw() {
background(0);
MostraBolinha();
MovimentodaBolinha();
ColisaodaBolinha();
mostraRaquete(xRaquete,yRaquete);
mostraRaquete(xRaqueteOponente,yRaqueteOponente);
movimentaMinhaRaquete();
verificaColisaoRaquete (xRaquete,yRaquete);
verificaColisaoRaquete (xRaqueteOponente,yRaqueteOponente);
movimentoRaqueteOponente();
incluirPlacar ();
marcaPonto();
}
function MostraBolinha() {
circle(xBolinha, yBolinha, diametro);
}
function MovimentodaBolinha() {
xBolinha += velocidadeXBolinha;
yBolinha += velocidadeYBolinha;
}
function ColisaodaBolinha() {
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 movimentaMinhaRaquete() {
if (keyIsDown(UP_ARROW)) {
yRaquete -= 10;
}
if (keyIsDown(DOWN_ARROW)) {
yRaquete += 10;
}
}
function verificaColisaoRaquete (x,y) {
colisao = collideRectCircle(x,y, raqueteComprimento, raqueteAltura, xBolinha, yBolinha, raio);
if (colisao){
velocidadeXBolinha *= -1;
raquetada.play();
}
}
function movimentoRaqueteOponente (){
velocidadeYOponente = yBolinha - yRaqueteOponente - raqueteComprimento / 2 - 60;
yRaqueteOponente += velocidadeYOponente + chanceDeErrar;
calculaChanceDeErrar()
}
function calculaChanceDeErrar(){
if (pontosOponente >= meusPontos){
chanceDeErrar +=1
if (chanceDeErrar >=100){
chanceDeErrar = 101;
}
}
else {
chanceDeErrar -= 1
if (chanceDeErrar <= 35){
chanceDeErrar = 35;
}
}
}
function incluirPlacar (){
stroke(255)
textSize(18)
textAlign(CENTER)
fill(color(255, 140, 0))
rect(230,10,40,20)
rect(530,10,40,20)
fill (255);
text (meusPontos,250,26)
text (pontosOponente,550,26)
}
function marcaPonto(){
if (xBolinha > 780){
meusPontos +=1;
ponto.play()
}
if (xBolinha < 15){
pontosOponente +=1;
ponto.play()
}
}