2018年10月25日 星期四

week07矮矮的筆記

其中進度
float[] brickY=new float[80];
float[] brickX=new float[80];
int [] bricklife=new int[80];

float ballX=400, ballY=560, ballVX=0, ballVY=0;
void setup()
{
  size(800,600);
  fill(255,60,53);
  
  for(int i = 0 ; i < 80 ; i++ )
  {
      brickX[i] = (i%10)*90 ;
      brickY[i] =int (i/10)*35;
      bricklife[i]=1;
  }
}
boolean flying =false,gameover=false;
void draw()
{
  background(0);
  fill(255,0,255);
  rect (mouseX-50,580, 150,20);
  fill(123,123,156);
  for(int i=0;i<80;i++)
  {
    if(bricklife[i]==0) continue;
    rect (brickX[i],brickY[i], 80,30);
    if(brickX[i] < ballX && ballX < brickX[i]+75 && abs(ballY-brickY[i])<20)
    bricklife[i]=0;
    if(bricklife[i]==0)
    {
      if(ballX>=brickX[i]) ballVX=10;
      if(ballX<=brickX[i]) ballVX=-10;
      if(ballY>=brickY[i]) ballVY=10;
      if(ballY<=brickY[i]) ballVY=-10;
    }
  }
  fill(123,213,0);
  ellipse(ballX,ballY,50,50);
  if(flying &&!gameover)
  {
    ballX+=ballVX; 
    ballY+=ballVY; 
    if(ballY>560 && abs(mouseX-ballX)<75)
    {
      ballVY=-abs(ballVY);
      ballY=500;
    }
    if(ballY>580) gameover=true;
    if(ballY<0)
    {
      ballVY=-ballVY;
      ballY=0;
    }
    if(ballX>780) 
    {
      ballX=780-(ballX-780);
      ballVX=-abs(ballVX);
    }
    if(ballX<0) 
    {
      ballX=abs(ballX);
      ballVX=abs(ballVX);
    }
  }
  else ballX=mouseX;
}
void mousePressed()
{
  flying=true; ballVY=-20; ballVX=3;
}

沒有留言:

張貼留言