2
respostas

[Dúvida] os pontos dos dois lados não aumentam

//variaveis bola let Xbola = 300; let Ybola = 200; let Velx_bola = 6; let Vely_bola = 6; let Diame = 30; let Raio = Diame / 2;

//variaveis Raquete let xRaq = 5; let yRaq = 150; let raqAlt = 110; let raqLar = 12; let colidiu = false; let pontosMeus = 0;

//variaveis Oponente let xOpo = 580; let yOpo = 150; let opoAlt = 110; let opoLar = 12; let velyOpo; let pontosOpo = 0;

function setup() { createCanvas(600, 400); }

function draw() { background(0); showBola(); showRaquete(xRaq, yRaq); showRaquete(xOpo, yOpo); showPlacar();

moveBola(); moveRaq(); moveOpo();

coliBola(); checkColi(xRaq, yRaq); checkColi(xOpo, yOpo);

//pontos marcaPonto(); }

//cria a Bola function showBola() { circle(Xbola, Ybola, Diame); }

//movimentação da bola (variaveis velocidade) function moveBola() { Xbola += Velx_bola; Ybola += Vely_bola; }

//verifica a colisão da bola function coliBola() { if (Xbola + Raio > width || Xbola - Raio < 0) { Velx_bola *= -1; }

if (Ybola + Raio > height || Ybola - Raio < 0) { Vely_bola *= -1; } }

//cria a Raquete function showRaquete(x, y){ rect(x, y, raqLar, raqAlt); }

//movimenta a Raquete pra cima e pra baixo function moveRaq(){

if (keyIsDown(UP_ARROW)){ yRaq -= 10; }

if (keyIsDown(DOWN_ARROW)){ yRaq += 10; }

yRaq = constrain(yRaq, 4, 286); }

//colisão bola e Raquetes function checkColi(x, y){ colidiu = collideRectCircle(x, y, raqLar, raqAlt, Xbola, Ybola, Diame); if (colidiu){ Velx_bola *= -1; }

}

//movimentação do Oponente function moveOpo(){ velyOpo = Ybola - yOpo - opoAlt / 2 - 5;

yOpo += velyOpo

yOpo = constrain(yOpo, 4, 286) }

function showPlacar (){ fill(255); text(pontosMeus, 278, 26); text(pontosMeus, 321, 26); }

function marcaPonto(){ if (Xbola + Raio > 590){ pontosMeus += 1; } if (Xbola - Raio < 10){ pontosOpo += 1; } }

segui o video mas os pontos não aumentam

2 respostas

Salve Pietro, uma dica, quando você for colocar algum trecho de código utiliza a ferramenta de "inserir bloco de código" ctrl-Alt-c. Assim, o seu código fica mais fácil para outras pessoas lerem e tentar solucionar o seu problema.

No meu caso, o código está aumentando os pontos, mas está contabilizando em 7 em 7. Então você resolveria um problema e entraria em outro, caso queira das uma olhada.

function MarcaPonto()
{
  if (xBolinha > 590)
   {
     PontosOponente += 1;
   }
  if(xBolinha  < 10)
  {
    MeusPontos += 1;
  }
}
MarcaPonto();

Nesse caso você inverteu, Natan.

Quando o xBolinha for maior que 590 (ou seja, quando ele encostar na parede do adversário) o seu adversário vai marcar um ponto e quando for menor que 10 (ou seja, encostar na sua parede) você vai marcar um ponto.

Para resolver isso é só inverter.

function MarcaPonto()
{
  if (xBolinha > 590)
   {
     MeusPontos += 1;
   }
  if(xBolinha  < 10)
  {
    PontosOponente += 1;
  }
}
MarcaPonto();