2018年12月27日 星期四

Week16_黃登煜

加音樂
PImage imgleft,imgup,imgdown,imgright,imgdance;
PImage imgrightqq,imgleftqq,imgupqq,imgdownqq;
PImage []direction = new PImage[4];
float leftX=90,upX=230,downX=370,rightX=510;
float leftY=900,upY=900,downY=900,rightY=900;
float leftVY=6;
float upVY=5;
float downVY=4;
float rightVY=7;

import ddf.minim.*;
Minim minim;
AudioPlayer player1,player2,player3,player4,player5;
int score=0;
void setup(){
  size(600,900);
  background(255);
  imgdance=loadImage("dance.jpg");
  imgleft=loadImage("left.png");
  imgup=loadImage("up.png");
  imgdown=loadImage("down.png");
  imgright=loadImage("right.png");
 
  imgrightqq=loadImage("rightqq.png");
  imgleftqq=loadImage("leftqq.png");
  imgupqq=loadImage("upqq.png");
  imgdownqq=loadImage("downqq.png");
  imageMode(CENTER);
 
  direction[0]=imgleft;
  direction[1]=imgup;
  direction[2]=imgdown;
  direction[3]=imgright;
 
  minim = new Minim(this);
  player1 = minim.loadFile("BLACKPINK.mp3");
}
int choose=0;
void draw(){
  player1.play();
  image(imgdance,width/2,height/2,width,height);
  image(imgleftqq,90,150,100,100);
  image(imgupqq,230,150,100,100);
  image(imgdownqq,370,150,100,100);
  image(imgrightqq,510,150,100,100);
  fill(#C75AF7);textSize(50);text("Score:"+score,30,80);

  if(choose==1){
    fill(#C75AF7);textSize(50);text("Great",400,80);
  }else if(choose==2){
    fill(#C75AF7);textSize(50);text("Good",400,80);
  }else if(choose==3){
    fill(#C75AF7);textSize(50);text("Cool",400,80);
  }else if(choose==4){ 
    fill(#C75AF7);textSize(50);text("Bad",400,80);
  }else if(choose==5){ 
    fill(#C75AF7);textSize(50);text("Miss",400,80);
  }
  if(leftY<0){ 
    choose=5;
    score-=4;
    leftX=90;
    leftY=900;
    leftVY=random(4,7);
  }else if(upY<0){
    choose=5;
    score-=4;
    upX=230;
    upY=900;
    upVY=random(4,7);
  }else if(downY<0){
    choose=5;
    score-=4;
    downX=370;
    downY=900; 
    downVY=random(4,7);
  }else if(rightY<0){
    choose=5;
    score-=4;
    rightX=510;
    rightY=900;
    rightVY=random(4,7);
  }
 
  leftY-=leftVY;
  upY-=upVY;
  downY-=downVY;
  rightY-=rightVY;
  image(imgleft,leftX,leftY,100,100);
  image(imgup,upX,upY,100,100);
  image(imgdown,downX,downY,100,100);
  image(imgright,rightX,rightY,100,100);
}
void killleft(){
  leftX=90;
  leftY=900;
  leftVY=random(4,7);
}
void killup(){
  upX=230;
  upY=900;
  upVY=random(4,7);
}
void killdown(){
  downX=370;
  downY=900; 
  downVY=random(4,7);
}
void killright(){
  rightX=510;
  rightY=900;
  rightVY=random(4,7);
}
void keyPressed(){
  if(key=='1'){
    if(dist(90,150,leftX,leftY)<10){
      score+=5;
      killleft();
      choose=1;
    }
    else if(dist(90,150,leftX,leftY)<30){
      score+=3;
      killleft();
      choose=2;
    }
    else if(dist(90,150,leftX,leftY)<60){
      score-=1;
      killleft();
      choose=3;
    }
     else if(dist(90,150,leftX,leftY)<90){
      score-=2;
      killleft();
      choose=4;
     }else if(dist(90,150,leftX,leftY)<120){
      score-=3;
      killleft();
      choose=5;
     }
  }
  if(key=='2'){
    if(dist(230,150,upX,upY)<10){
      score+=5;
      killup();
      choose=1;
    }
    else if(dist(230,150,upX,upY)<30){
      score+=3;
      killup();
      choose=2;
    }
    else if(dist(230,150,upX,upY)<60){
      score-=1;
      killup();
      choose=3;
    }
     else if(dist(230,150,upX,upY)<90){
      score-=2;
      killup();
      choose=4;
     }else if(dist(230,150,upX,upY)<120){
      score-=3;
      killup();
      choose=5;
     }
  }
  if(key=='3'){
    if(dist(370,150,downX,downY)<10){
      score+=5;
      killdown();
      choose=1;
    }
    else if(dist(370,150,downX,downY)<30){
      score+=3;
      killdown();
      choose=2;
    }
    else if(dist(370,150,downX,downY)<60){
      score-=1;
      killdown();
      choose=3;
    }
     else if(dist(370,150,downX,downY)<90){
      score-=2;
      killdown();
      choose=4;
     }else if(dist(370,150,downX,downY)<120){
      score-=3;
      killdown();
      choose=5;
     }
  }
  if(key=='4'){
    if(dist(510,150,rightX,rightY)<10){
      score+=5;
      killright();
      choose=1;
    }
    else if(dist(510,150,rightX,rightY)<30){
      score+=3;
      killright();
      choose=2;
    }
    else if(dist(510,150,rightX,rightY)<60){
      score-=1;
      killright();
      choose=3;
    }
     else if(dist(510,150,rightX,rightY)<90){
      score-=2;
      killright();
      choose=4;
     }else if(dist(510,150,rightX,rightY)<120){
      score-=3;
      killright();
      choose=5;
     }
  }
}

沒有留言:

張貼留言