2
respostas

As bordas engolem a minha bolinha

Meu codigo ta igual o do professor, mas minha bolinha nao se movimenta pros lados e nem pra cim,a e pra baixo. Ela so se moviementa na diagonal pra direita e desaparece na borda; ALguem me ajuda? :( :( meu codigo:

let xBolinha = 300; let yBolinha = 200; let diametro = 15; let raio = diametro/2

let velocidadexBolinha =6; let velocidadeyBolinha =6;

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

function draw() { background(0); circle ( xBolinha,yBolinha,diametro); xBolinha += velocidadexBolinha; yBolinha += velocidadeyBolinha; }

if (xBolinha > width || xBolinha -raio >0){ XBolinha <0){ velocidadexbolinha *=-1 } if (yBolinha> height|| yBolinha -raio >0{ yBolinha <0){ velocidadeYBolinha *= -1; }

2 respostas

Oi.

A sua função verifica colisão está diferente da minha, talvez seja isso

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

if (yBolinha + raio> height || yBolinha - raio <0){ velocidadeYBolinha *= -1; } }

Seu if esta fora do escopo, experimente coloca-lo dentro da função draw()

function draw() {
    background(0);
    circle(xBolinha, yBolinha, diametro);
    xBolinha += velocidadeXBolinha;
    yBolinha += velocidadeYBolinha;

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