segunda-feira, 23 de novembro de 2015

MAMI: Pong

Nessa atividade tivemos que fazer um minigame estilo pong, calculando a colisão da bolinha nas plataformas e nas extremidades.

Código:


int posX;
int posY;
int padY1 = 80;
int padY2 = 80;
int acX = 1;
int acY = 1;

boolean colisao(int xPos, int x1, int x2) { //Função para ver a colisão
  if (xPos >= x1 && xPos <= x2) {
    return true;
  } else {
    return false;
  }
}
void setup(){
  size(400,240);
  posX = width/2;
  posY = height/2;
}

void draw(){
  background(0);
  ellipse(posX,posY,30,30);
  posX += acX;
  posY += acY;
  rect(20,padY1,20,80);
  rect(360,padY2,20,80);
  if (keyPressed){ //movimentando as plataformas
    if (((key == 's') || (key == 'S')) && (padY1 <= (height-80))){ padY1+=10; }
    if (((key == 'w') || (key == 'W')) && (padY1 >= 0)){ padY1-=10; }
    if ((keyCode == DOWN) && (padY2 <= (height-80))){ padY2 +=10; }
    if ((keyCode == UP) && (padY2 >= 0)){ padY2 -=10; }
  }
//colisão nas plataformas e extremidades
  if (colisao(posX-15,20,40) && colisao(posY,padY1,padY1+80)){acX *= -1.1;}
  if (colisao(posX+15,360,400) && colisao(posY,padY2,padY2+80)){acX *= -1.1;}
  if (posY - 15 <= 0){acY = -acY;}
  if (posY + 15 >= height){acY = -acY;}
}

Resultado:



0 comentários:

Postar um comentário