2
respostas

raquete com colisão na borda

editei, pq ainda estou a ver pessoas a perguntar, assim fica fácil encontra!!!

-criei 01 função para a raquete e para a raqueteOponente. -como o yRaquete fica mais próximo do ponto zero do canvas: yRaquete < 0 e se ela passar do ponto zero do eixo y, a raquete voltaria para a posição mais extrema que ela pode chegar da borda, que é o yRaquete no ponto zero do eixo y do canvas.

Para o outro lado da raquete fiz a mesma coisa, só que do outro lado, para o yRaquete passar com o seu eixo y além dos 400 que é o ponto máx do canvas, ela tem que passar por completo a raquete, já que o eixo y da raquete está na parte contrária, quer dizer virado mais para o ponto zero do eixo y, então eu fiz: yRaquete +90 > height, quer dizer que o ponto y da raquete somado com a altura da raquete, o yRaquete passa a ficar na outra extremidade e assim causa a colisão. Quando ele causa a colisão, ele volta para o ponto mais extremo que o yRaquete pode chegar neste lado do canvas, que é 400 - 90. Ficando o yRaquete + sua altura encostado na borda. Para a raquete do oponente, a regra é a mesma!!!!! É só repetir. Não se esqueça de declarar as duas funções no draw(). OBS: atenção para as medidas do canvas, para a altura da raquete. No meu jogo está funcionando corretamente, para quem quiser olhar, segue o link:

https://editor.p5js.org/oromeu/sketches/4yg6I3M_1

function verificaColisaoRaqueteBorda ( ) {
      if (yRaquete < 0 )  {
             yRaquete = 0; 
       }
  if (yRaquete  +  90  >  height ) {
            yRaquete  =  310 ;
     }
}

function verificaColisaoRaqueteOponenteBorda ( ) {
    if ( yRaqueteOponente  <  0  )  {
              yRaqueteOponente  =  0; 
      }
  if ( yRaqueteOponente  + 90  >  height ) {
             yRaqueteOponente  =  310;
    }
}

2 respostas

Parabéns pela iniciativa Romeu, bacana mesmo!! Também vi algumas dúvidas por aí mesmo sobre este assunto. Ia ser legal se desse pra linkar lá no estudo estes insights pra galera que faz e no momento que se tiver fazendo né. Parabéns!!

Olá Ricardo, obrigado!! Essa ideia de linkar é muito boa mesmo, e tenho certeza que o Fórum está de olho nisso. Sem dúvida alguma, que deve acontecer algo do tipo nas próximas atualizações do curso. O fórum está cheio de boas ideias e vale a pena fazer um apanhado e organiza-las em um post fixo, ou algo do tipo.

obrigado!!!