2017年11月6日 星期一

Week08 彣禎的上課筆記

期中作品進度

PImage imgcat,imgrat,imgcave,imglife;
void setup(){
  size(500,800);
  imgcat=loadImage("cat.png");
  imgrat=loadImage("rat.png");
  imgcave=loadImage("cave.png");
  imglife=loadImage("life.png");
  for(int i=0;i<60;i++){
    ratX[i]=100+int(random(3))*150;
    ratY[i]=random(-8000);
    imageMode(CENTER);
  }
}
float []ratX=new float[80];
float []ratY=new float[80];
float catX=250,catY=700;
int score=0;
int life=3;
boolean Gameover=false;
int stage=0,time=0;
void draw(){
  background(129,214,125);
  if(stage==0)
  {
    fill(11,35,152); textSize(60);
    text("Click to Start",68,350);
  }
  else if(stage==1){
    if(life==0)stage=2;
  }else if(stage==2){
    fill(11,35,152); textSize(40);
    text("Game Over!!",48,350);
    text("You score is "+score,100,400);
  }
  fill(#286A25); rect(0,740,600,100);
  image(imglife,420,100,100,100);
  image(imgcave,100,10,200,120);
  image(imgcave,250,10,200,120);
  image(imgcave,400,10,200,120);
  fill(255,0,0);textSize(30); text("Score:"+score,10,100);
  textSize(40); text(":"+life,450,100);
  image(imgcat,catX,catY,150,150);
  if(stage==1){
  for(int i=0;i<60;i++){
    image(imgrat,ratX[i],ratY[i],70,70);
    ratY[i]+=2;
    if(dist(catX,catY,ratX[i],ratY[i])<75){
      ratY[i]=100+random(-8000);
      score+=5;
    }
    if(Gameover) return;
    if(ratY[i]>=700) {
      ratY[i]=100+random(-8000);
      life-=1;
     
      if(life==0) {
        Gameover=true;
      }
    }
  }
}
}
void keyPressed(){
  if(key=='a') catX-=75;
  if(key=='s') catX+=75;
}
void mousePressed(){
  if(stage==0) {stage=1;}
  if(stage==2) {stage=0;}
}

沒有留言:

張貼留言