2
respostas

[Projeto] Duplicando as raquetes e adicionando colisão

Eu basicamente dupliquei os códigos da raquete, adicionando apenas novos xRaquete e yRaquete para poder posicionar a raquete no canto direito da tela.

// Variáveis da raquete:
var xRaquete = 10
var yRaquete = 150
var raqueteComprimento = 10;
var raqueteAltura = 90

// Variáveis da raquete do oponente:
var xRaquete2 = 580
var yRaquete2 = 150

function criaRaquete(){
  rect(xRaquete, yRaquete, raqueteComprimento, raqueteAltura)
  rect(xRaquete2, yRaquete2, raqueteComprimento, raqueteAltura)
}
function movimentaRaquete(evento){
    if(keyIsDown(UP_ARROW)){
      yRaquete -= 5
      if(yRaquete < 0){
        yRaquete = 0
      }
    }if(keyIsDown(DOWN_ARROW)){
      yRaquete += 5
      if(yRaquete > 310){
        yRaquete = 310} 
  }
  if(keyIsDown(UP_ARROW)){
      yRaquete2 -= 5
      if(yRaquete2 < 0){
        yRaquete2 = 0
      }
    }if(keyIsDown(DOWN_ARROW)){
      yRaquete2 += 5
      if(yRaquete2 > 310){
        yRaquete2 = 310} 
  }
}

Com relação ao movimento, foi a mesma situação, apenas dupliquei e alterei os parametros do xRaquete para xRaquete2 e yRaquete para yRaquete2. Espero ter ajudado!

// Variável de colisão:
var colidiu = false;

function verificaColisaoBordas(){
  if(xBolinha >= width - raio || xBolinha < 0 + raio){
   velocidadeXBolinha *=-1
  }
  if(yBolinha > height - raio || yBolinha < 0 + raio ){
    velocidadeYBolinha *= -1
  }
}
function colisaoComRaquete(){ 
  colidiu = collideRectCircle(xRaquete, yRaquete, raqueteComprimento, raqueteAltura, xBolinha, yBolinha, raio)
  if(colidiu){
    velocidadeXBolinha *= -1
  }
  colidiu = collideRectCircle(xRaquete2, yRaquete2, raqueteComprimento, raqueteAltura, xBolinha, yBolinha, raio)
  if(colidiu){
    velocidadeXBolinha *= -1
  }
}

2 respostas

Olá Tércio!! Compartilhe conosco!! Estou curioso!!! kk

O resultado está aqui abaixo:

https://editor.p5js.org/Tercio/full/hKca3D91V