2020年10月12日 星期一

week05

水果忍者小遊戲

用上星期學到的牛頓定律去做水果的上下並用滑鼠去作斬擊
程式碼:
PImage img;
float x=100,y=500,vx=3,vy=-30;
int fruitDie=0;
void setup(){
  size(500,500);
  img=loadImage("fruit.jpg");
}
void draw(){
  background(0);
  image(img,x,y,100,100);
  x+=vx;
  y+=vy;
  vy+=0.98;
  if(y>500) fruitDie=1;
  if(x<mouseX && mouseX<x+100 &&y<mouseY && mouseY<y+100)fruitDie=1;
  stroke(255);line(mouseX,mouseY,pmouseX,pmouseY);
  if(fruitDie==1){
    if(frameCount%2==0){
      x=random(250);y=500;vx=random(2,3);vy=-random(28,32);
    }else{
      x=random(250,500);y=500;vx=-random(2,3);vy=-random(28,32);
    }
    fruitDie=0;
    }

聲音



程式碼:
import ddf.minim.*;
Minim minim;
AudioPlayer player1;
AudioPlayer player2;
void setup(){
  minim=new Minim(this);
  player1=minim.loadFile("swords.wav");
  player2=minim.loadFile("wind.wav");
  player2.loop();
}

void draw(){
  
}
void mousePressed(){
  player2.rewind();
  player2.play();
}

將聲音加入遊戲
程式碼:
import ddf.minim.*;
Minim minim;
AudioPlayer player1;
AudioPlayer player2;
PImage img;
float x=100,y=500,vx=3,vy=-30;
int fruitDie=0;
void setup(){
  size(500,500);
  img=loadImage("fruit.jpg");
  minim=new Minim(this);
  player1=minim.loadFile("swords.wav");
  player2=minim.loadFile("wind.wav");
  player2.loop();
}
void draw(){
  background(0);
  image(img,x,y,100,100);
  x+=vx;
  y+=vy;
  vy+=0.98;
  if(y>500) fruitDie=1;
  if(x<mouseX && mouseX<x+100 &&y<mouseY && mouseY<y+100){
    fruitDie=1;
    player2.rewind();
    player2.play();
  }
  stroke(255);line(mouseX,mouseY,pmouseX,pmouseY);
  if(fruitDie==1){
    if(frameCount%2==0){
      x=random(250);y=500;vx=random(2,3);vy=-random(28,32);
    }else{
      x=random(250,500);y=500;vx=-random(2,3);vy=-random(28,32);
    }
    fruitDie=0;
    }
}

沒有留言:

張貼留言