2
respostas

Raquete do Oponente não aparece

Não consigo identificar o que está errado, mas a raquete do oponente não aparece de forma alguma, segue o código abaixo: obs: não aparece erro no console.

// variáveis referentes à bolinha;
let xBolinha = 300;
let yBolinha = 200;
let diametro = 15;
let raio = diametro/2

// variáveis referentes à velocidade da bolinha;
let velocidadeXBolinha= 6;
let velocidadeYBolinha= 6;

// variáveis referentes à raquete;
let xRaquete = 5;
let yRaquete = 160;
let compraquete = 8;
let altraquete = 80;

//variáveis oponente;
let xRaqOpo= 585;
let yRaqOpo=150;
let velocidadeYopo;

let colidiu = false; 

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

function draw() {
  background(0);
  mostrabolinha();
  movimentabolinha();
  verificacolisao();
  mostraquete(xRaquete, yRaquete);
  movimentaquete();
  //verificacolisaor();
  colisaoraquetebiblioteca();
  mostraquete(xRaqOpo, yRaqOpo);
  movimentoOponente();
}

function mostrabolinha(){
   circle(xBolinha,yBolinha, diametro);

}

function movimentabolinha(){
  xBolinha+= velocidadeXBolinha;
  yBolinha+= velocidadeYBolinha;

}

function verificacolisao(){
  if (xBolinha + raio > width || xBolinha - raio<0 ){
  velocidadeXBolinha *= -1;
  }
    if (yBolinha + raio > height || yBolinha - raio<0) {
  velocidadeYBolinha *= -1;
}
}

function mostraquete (x,y) {
  rect (x, y, compraquete, altraquete );
}

function movimentaquete(){
  if ( keyIsDown(UP_ARROW)){
    yRaquete-=10;
  }
    if ( keyIsDown(DOWN_ARROW)){
    yRaquete+=10;
    }
}

function verificacolisaor() {
  if (xBolinha - raio < xRaquete + compraquete && yBolinha - raio < yRaquete +altuquete && yBolinha + raio > yRaquete) {
    velocidadeXBolinha*= -1;
  }
}

function colisaoraquetebiblioteca(){
  colidiu = 
  collideRectCircle(xRaqOpo,yRaqOpo,compraquete,altraquete, xBolinha, yBolinha, raio);
  if (colidiu){
    velocidadeXBolinha *= -1
  }

}

function movimentoOponente(){
  velocidadeYopo+= yBolinha - yRaqOpo - compraquete/ 2-30;
  yRaqOpo += velocidadeYopo
}
2 respostas

function setup() { createCanvas(500, 400); (eixo X menor que a posicao X da raquete)

function movimentoOponente(){ velocidadeYopo += yBolinha - yRaqOpo - compraquete/ 2-30; (nao entendi o motivo rsrsr mas esse sinal de + ai esta fazendo a raquete ficar invisivel na tela)

function verificacolisaor() { if (xBolinha - raio < xRaquete + compraquete && yBolinha - raio < yRaquete +altuquete && yBolinha + raio > yRaquete) { velocidadeXBolinha*= -1; (corrigir esse nome para que a funcao colidir com sua raquete funcione)

Muito obrigada, me ajudou muito!!