2018年10月18日 星期四

Week06_陳示珮

Week06



播放聲音















(1)至速寫本的引用庫文件中添加文件加入聲音
















(2)下載框起來的兩個套件
















(3)寫入程式並按照文件位置找到聲音檔即可播放

程式碼 :

import ddf.minim.*;
Minim minim;
AudioPlayer player;
void setup(){
 minim = new Minim(this);
 player=minim.loadFile("groove.mp3");
 player.play();
}


再學一次水果忍者















(1) 丟出一顆水果

程式碼 :

float fx,fy,fvx,fvy;
void setup(){
  size(800,600);
  fx=30; fvx=3;
  fy=700; fvy=-35;
  }
void draw(){
 background(0);
 ellipse(fx,fy,100,100);
 fx+=fvx;
 fy+=fvy;
 fvy+=0.98;
}















(2) 丟出多顆水果

程式碼 :

float []fx=new float[20];
float []fy=new float[20];
float []fvx=new float[20];
float []fvy=new float[20];
void setup(){
  size(800,600);
  for(int i=0;i<20;i++){
  fx[i]=random(800); fvx[i]=3;
  fy[i]=700; fvy[i]=-35;
  }
}
void draw(){
 background(0);
 for(int i=0;i<20;i++){
 ellipse(fx[i],fy[i],100,100);
 fx[i]+=fvx[i];
 fy[i]+=fvy[i];
 fvy[i]+=0.98;
 }
}
















(3)隨機丟出多顆水果並重複丟

程式碼 :

float []fx=new float[20];
float []fy=new float[20];
float []fvx=new float[20];
float []fvy=new float[20];
void reborn(int  i){
  fx[i]=random(800); fvx[i]=random(6)-3;
  fy[i]=700; fvy[i]=-35;
}
void setup(){
  size(800,600);
  for(int i=0;i<20;i++){
    reborn(i);
  }
}
void draw(){
 background(0);
 for(int i=0;i<20;i++){
  if(dist(mouseX,mouseY,fx[i],fy[i])<=50){
    reborn(i);continue;
 }
 ellipse(fx[i],fy[i],100,100);
 fx[i]+=fvx[i];
 fy[i]+=fvy[i];
 fvy[i]+=0.98;
 if(fy[i]>700)reborn(i);
 }
}







沒有留言:

張貼留言