fiz uma outra pergunta pra resolver isso achei q tinha resolvido pois meu jogo começou a rodar, porem ele n mostra o placar mesm assim e essa mensagem e a que aparece pra mim, sei oq fazer
fiz uma outra pergunta pra resolver isso achei q tinha resolvido pois meu jogo começou a rodar, porem ele n mostra o placar mesm assim e essa mensagem e a que aparece pra mim, sei oq fazer
Compartilhe o seu código para que eu possa dar uma analisada ;)
//variáveis da bolinha let xBolinha = 300; let yBolinha = 200; let diametro = 30; let raio = diametro / 2 ; let colidir = false
//velocidade da bolinha let velocidadeXBolinha = 6 let velocidadeYBolinha = 6
//variaveis da raquete let xRaquete = 5 let yRaquete = 150 let lRaquete = 10 let aRaquete = 90
//variaveis do bot let xRaqueteBot = 585 let yRaqueteBot = 150 let velocidadeYBot;
//placar
let pontosDoPai let pontosDele
function setup() { createCanvas(600, 400); }
function draw() { background(0); mostraBolinha(); movimentaBolinha(); verificaColisaoBorda(); Raquete(xRaquete,yRaquete); Raquete(xRaqueteBot,yRaqueteBot); movimentoMRaquete(); colisao(xRaquete,yRaquete); movimentoBot(); colisao(xRaqueteBot,yRaqueteBot); pontos(pontosDoPai,278,26); pontos(pontosDele, 321,26); //raquetada();
}
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 Raquete(x,y){
rect(x,y,lRaquete,aRaquete) }
function movimentoMRaquete(){
if (keyIsDown(UP_ARROW)) { yRaquete -= 10; }
if (keyIsDown(DOWN_ARROW)){ yRaquete += 10; } } function raquetada(){
if (xBolinha - raio < xRaquete + lRaquete && yBolinha - raio < yRaquete + aRaquete && yBolinha + raio > yRaquete){ xBolinha *= -1; } }function colisao(x,y){ colidir = collideRectCircle(x, y, lRaquete, aRaquete, xBolinha, yBolinha, diametro); if (colidir){ velocidadeXBolinha *= -1; } }
function movimentoBot(){ velocidadeYBot = yBolinha - yRaqueteBot - lRaquete /2 -30; yRaqueteBot += velocidadeYBot } function pontos(pontos,x,y){ fill (300); text(pontos,x,y); }
mb esqueci disso
As variáveis pontosDoPai e pontosDele não tinham valor atribuído, atribui valor 0 a elas como abaixo:
let pontosDoPai = 0
let pontosDele = 0
Modifiquei um pouco a function pontos:
function pontos(){
fill (300);
text(pontosDoPai, 278, 26)
text(pontosDele, 321, 26)
if (xBolinha > 585){
pontosDoPai += 1}
if (xBolinha < 15){
pontosDele += 1
}}
Isso deve resolver seu problema, o único detalhe é que para essa solução funcionar você só deve "chamar" a function pontos uma única vez e não atribuir X e Y a ela, assim como abaixo:
function draw() {
background(0);
mostraBolinha()
movimentaBolinha();
verificaColisaoBorda();
Raquete(xRaquete,yRaquete);
Raquete(xRaqueteBot,yRaqueteBot);
movimentoMRaquete();
colisao(xRaquete,yRaquete);
movimentoBot();
colisao(xRaqueteBot,yRaqueteBot);
pontos();
//raquetada();
}
nossa ficou mt diferente do que ele ensinou na aula kkkkk vou ver se funcionou, so um minuto