1
resposta

Depois da escrita da function verificarColisaoBolinhan a bolinha travou e n se mexe. O codigo para mim se parece exato ao do professor

//variaveis da bolinha
let xBolinha=300;
let yBolinha=200;
let diametro=25;
let raio= diametro /2;

//variaveis da velocidade da bolinha
let velocidadeXbolinha=6;
let velocidadeYbolinha=6;

//variaveis da raquete 
let xRaquete=5;
let yRaquete=150;
let RaqueteComprimento=10;
let RaqueteAltura=90

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

function draw() {
  background(0);
  mostrarBolinha();
  movimentarBolinha();
  verificarColisaoBorda();
  mostrarRaquete();
  movimentarRaquete();
  verificarColisaoRaquete();

}

function mostrarBolinha(){
   circle(xBolinha, yBolinha, diametro);
}
function movimentarBolinha(){
   xBolinha += velocidadeXbolinha;
  yBolinha += velocidadeYbolinha;
}

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

  if (yBolinha + raio > height ||yBolinha -raio < 0){
    velocidadeYbolinha *=-1
  }
}
 function mostrarRaquete(){
   rect(xRaquete, yRaquete,  RaqueteComprimento, RaqueteAltura);
 }

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

  function verificarColisaoRaquete(){
     if (xBolinha < xRaquete + RaqueteComprimento){
       velocidadeXbolinha *= -1
     }
  }
}
1 resposta

Oi, Felipe! Tudo bom contigo?

Agradeço a paciência em aguardar uma resposta!

A chaves de fechamento da função movimentarRaquete() encontra-se após a função verificarColisaoRaquete(). Após trocarmos a posição das chaves, chegamos neste resultado:

function movimentarRaquete(){
  if (keyIsDown ( UP_ARROW)){
    yRaquete -=10;
  }
   if (keyIsDown ( DOWN_ARROW)){
    yRaquete +=10;
  }
} // Aqui está o fechamento da função!

function verificarColisaoRaquete(){
   if (xBolinha < xRaquete + RaqueteComprimento){
     velocidadeXbolinha *= -1
   }
}

Com isso, a bolinha volta a se movimentar na tela!


Para contribuir com seus estudos, deixo logo abaixo uma recomendação de leitura. Neste artigo, a Akemi comenta sobre um ponto muito importante com relação à organização do nosso código, que é a convenção de nomenclatura.


Por fim, gostaria de dizer que fiz uma alteração em seu tópico do fórum formatando o código que você compartilhou com a gente!

Para fazermos isso, podemos seguir o seguinte passo a passo:

  • Selecionar e copiar o código que será compartilhado;
  • Nas ferramentas do campo “O que você acha disso?” clicar na sétima ferramenta de símbolo </> (Inserir bloco de código) ou pressionar CTRL+ALT+C;
  • Colar o código que será enviado entre os três acentos graves de abertura e fechamento.

Outra maneira de compartilharmos um código, sobretudo do p5.js, é compartilhando o link do nosso projeto, assim:

  • Localizar a barra superior com os itens “File”, “Edit”, “Sketch”, e “Help” (em Português, as opções seriam: “Arquivo”, “Editar”, “Esboço” e “Ajuda”, respectivamente);
  • Clicar em “File”;
  • Selecionar a opção “Share” ou “Compartilhar”;
  • Copiar o link da terceira opção da lista (de cima para baixo);
  • Colá-lo em seu tópico do fórum.

Fico à disposição para te auxiliar caso surjam dúvidas ao decorrer dos seus estudos!

Abraços, Felipe!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado! ✓.