Não consigo identificar no meu código o porquê dos pontos não estarem sendo computados pelo placar. Deixei inclusive o jogo rodando para tentar entender e enquanto isso vi que, após um tempo, o placar estava marcando +10. Não sei se é um atraso na conta ou o que poderia ser.
//variáveis que determinam tamanho e localização da bolinha
let xBolinha = 300; //metade da largura - faz centralizar
let yBolinha = 200; //metade da altura - faz centralizar
let diametro = 25;
let raio = diametro / 2
//velocidade da bolinha
let velocidadeXBolinha = 6; // vai pro lado
let velocidadeYBolinha = 6; // vai pra baixo
//variáveis da minha raquete
let xRaquete = 5;
let yRaquete = 150;
let raqueteComprimento = 10;
let raqueteAltura = 90;
//variáveis da raquete Oponente
let xRaqueteOposta = 585;
let yRaqueteOposta = 150;
let raqueteOpostaComprimento = 10;
let raqueteOpostaAltura = 90;
let velocidadeYOposta;
let colidiu= false;
// placar do jogo
let meusPontos = 0;
let pontosOpostos = 0;
function setup() {
createCanvas(600, 400); //largura, altura
}
function draw() {
background(0);
mostraBolinha(); //chama a função "mostrar bolinha" para dentro da função Draw
movimentaBolinha(); // chama a função que define o movimento da bolinha
verificaColisaoBorda(); //chama a função que determina como/a partir de onde a bolinha vai colidir com a borda
mostraRaquete (xRaquete, yRaquete);
mostraRaquete (xRaqueteOposta, yRaqueteOposta);
movimentaMinhaRaquete();
movimentaRaqueteOposta();
//movimentaRaqueteOpostaPlayer2();
//verificaColisaoRaquete();
//verificaColisaoRaqueteOposta();
colisaoRaqueteBiblioteca(xRaquete, yRaquete);
colisaoRaqueteBiblioteca(xRaqueteOposta, yRaqueteOposta);
incluiPlacar();
marcaPonto();
}
function mostraBolinha(){
circle(xBolinha,yBolinha,diametro); //parametros da bolinha: cordX, cordY, diâmetro (2x o raio)
}
function movimentaBolinha(){
xBolinha += velocidadeXBolinha;
yBolinha += velocidadeYBolinha;
}
function verificaColisaoBorda(){
if (xBolinha + raio > width || //somar ou subtrair o raio faz com que a colisão seja na borda da bolinha e não a partir do centro dela
xBolinha - raio < 0){
velocidadeXBolinha *= -1;
}
if (yBolinha + raio > height ||
yBolinha - raio < 0){
velocidadeYBolinha *= -1;
}
}
function mostraRaquete (x, y){
rect (x, y, raqueteComprimento,
raqueteAltura); // posição x, y, largura e altura
}
function movimentaMinhaRaquete(){
if (keyIsDown(UP_ARROW)){
yRaquete -= 10;
}
if (keyIsDown(DOWN_ARROW)){
yRaquete += 10;
}
}
function movimentaRaqueteOpostaPlayer2(){
if (keyIsDown(81)){
yRaqueteOposta -= 10;
}
if (keyIsDown(65)){
yRaqueteOposta += 10;
}
}
function movimentaRaqueteOposta(){
velocidadeYOposta = yBolinha - yRaqueteOposta - raqueteComprimento /2 - 30
yRaqueteOposta += velocidadeYOposta
}
function verificaColisaoRaquete(){
if (xBolinha - raio < xRaquete + raqueteComprimento && yBolinha - raio < yRaquete + raqueteAltura && yBolinha + raio > yRaquete)
{
velocidadeXBolinha *= -1;
}
}
function verificaColisaoRaqueteOposta(){
if (xBolinha + raio > xRaqueteOposta && yBolinha + raio < yRaqueteOposta + raqueteOpostaAltura && yBolinha - raio > yRaqueteOposta)
{
velocidadeXBolinha *= -1;
}
}
function colisaoRaqueteBiblioteca(x,y){
colidiu =
collideRectCircle(x,y,raqueteComprimento,raqueteAltura, xBolinha, yBolinha, raio); // os 4 parametros são referentes ao retângulo - raquete, x, y, , comprimento (weight), altura (height) ou seja
if (colidiu) {
velocidadeXBolinha *= -1}
}
function incluiPlacar(){
fill(255);
text(meusPontos, 278, 26);
text(pontosOpostos, 321, 26)
}
function marcaPonto(){
if (xBolinha > 590){
meusPontos += 1;
}
if (xBolinha < 10){
pontosOpostos += 1;
}
}
// Criamos uma função para desenhar a raquete
////function mostraRaquete(){
//rect(xRaquete, yRaquete, raqueteComprimento, raqueteAltura
//}
//Movimentamos a raquete através das setas para cima e para baixo do teclado, através dos código keyIsDown(UP_ARROW) e keyIsDown(DOWN_ARROW) respectivamente
//Implementamos a colisão da bolinha com a minha raquete, verificando a posição x e y de cada um deles
//importamos uma biblioteca do Github que verifica a colisão