//Variaveis da Bolinha
let xBolinha = 300;
let yBolinha = 200;
let diametro = 28;
let raio = diametro/2;
//Variaveis da velocidade da Bolinha
let velocidadeX = 3;
let velocidadeY = 3;
//Variaveis da raquete 1
let xRaquete = 5;
let yRaquete = 150;
let comprimentoRaquete = 10;
let alturaRaquete = 90;
//Variaveis do oponente
let xRaquete2 = 585;
let yRaquete2 = 150;
let velocidadeYRaquete2;
let hit = false;
//Variaveis placar
let pontos1 = 0;
let pontosCPU = 0;
function setup() {
createCanvas(600, 400);
}
function draw() {
background(0);
mostraBolinha();
movimentaBolinha();
reconheceBorda();
mostraRaquete(xRaquete, yRaquete);
movimentaRaquete1();
hitRaquete(xRaquete, yRaquete);//Solucao GitHub
//reconheceRaquete1();//Minha Solucao
mostraRaquete(xRaquete2, yRaquete2);
//movimentaRaquete2();
hitRaquete(xRaquete2, yRaquete2);
incluiPlacar();
marcaPonto();
}
function mostraBolinha() {
circle(xBolinha, yBolinha, diametro);
}
function movimentaBolinha() {
xBolinha += velocidadeX;
yBolinha += velocidadeY;
}
function reconheceBorda() {
if(xBolinha + raio > width || xBolinha - raio < 0) {
velocidadeX *= -1;
}
if(yBolinha + raio > height || yBolinha - raio < 0) {
velocidadeY *= -1;
}
}
function mostraRaquete(x, y) {
rect(x, y, comprimentoRaquete, alturaRaquete);
}
function movimentaRaquete1() {
if(keyIsDown(UP_ARROW)) {
yRaquete -= 10;
}
if(keyIsDown(DOWN_ARROW)){
yRaquete += 10;
}
}
function reconheceRaquete1(){
if(xBolinha - raio < xRaquete + comprimentoRaquete && yBolinha - raio < yRaquete + alturaRaquete && yBolinha + raio > yRaquete){
velocidadeX *= -1
}
}
function hitRaquete(x, y) {
hit = collideRectCircle(x, y, comprimentoRaquete, alturaRaquete, xBolinha, yBolinha, raio);
if(hit){
velocidadeX *= -1;
}
}
function movimentaRaquete2() {
velocidadeYRaquete2 = yBolinha - yRaquete2 - comprimentoRaquete/2 - 30;
yRaquete2 += velocidadeYRaquete2;
}
function incluiPlacar(){
fill(255);
text(pontos1, 278, 26);
text(pontosCPU, 321, 26);
}
function marcaPonto(){
if(xBolinha > 590){
pontos1 += 1;
}
if(xBolinha < 10){
pontosCPU += 1;
}
}
Mesmo que a bolinha toque nas bordas os pontos não estão sendo contabilizados no placar. Não consigo encontrar o erro no código. https://editor.p5js.org/pedroheriquecarvalhomota/sketches/rRfqjUQ6o