domingo, 12 de abril de 2015

Atividade 10

- apresentar e discutir todo o processo de construção do jogo desenvolvido, enfatizando o uso de códigos anteriores.

código:

Nessa versão do Breakout foi escolhido apenas um survivor em que a pessoa tem que manter a bola rodando e de acordo que o tempo vai aumentando, a dificuldade també, pois a bola vai ficando mais rápida..

As atividades anteriores utilizadas nesse código foram todas as relacionadas a criação do pong e a criação da "plataforma".

int raio = 10;
int ballX= raio;
int ballY= raio;
float dX=6;
float dY=6;
int xP = 50;
int yP;

void setup()
{
   size(800, 600);
   yP= height -50;
}

void draw()
{
  background(0);
  //noStroke();
  fill(255);
  //Barra
  rect(xP, yP, 100, 20);
  if(keyPressed == true)
  {
    if(keyCode == RIGHT && xP< width - 100)
    xP+=10;
    else if(keyCode == LEFT && xP> 0)
    xP-=10;
  }
  
  
  //Bola
  ellipse(ballX, ballY, 2*raio, 2*raio);
  ballX+=dX;
  ballY+=dY;
  
  //Colisão da bola com a parede
  if(ballX + raio >= width-raio)//movimento horizontal
   dX= -1.01*dX;
  else if(ballX + raio <= raio)
   dX = -1.01*dX;
  if(ballY + raio <= raio)//movimento vertical
   dY = -1.01*dY;
//  else if(ballY + raio >= height-raio)//movimento vertical
//   dY= -1.01*dY;  
   
  //Colisão da bola com a barra
//  if(ballX + raio >= xP && ballX + raio == xP + 100 && ballY + raio == yP)
//  {
//   println(ballY + raio + " " + yP); 
//   dY = -1.01*dY;
//  }
  if(estaDentro(ballX + raio, ballY + raio, xP, yP, xP + 100, yP + 20))
   dY = -1.01*dY;
   println(ballX + raio + " " + xP);
   
   
}

boolean estaDentro(int xP, int yP, int x1 , int y1, int x2, int y2)
{
   if(xP >= x1 && xP <= x2  && yP>= y1 && yP <= y2)
     return true;
   return false;  
}

Nenhum comentário:

Postar um comentário