2020年10月12日 星期一

喵~小遊戲、聲音~

結合前四周所學,做出[水果忍者]~
水果忍者
  • 匯入圖片(水果)
    • PImage img;
    • float x=100, y=200;
    • void setup(){
    •   size(500,500);
    •   img=loadImage("fruit.png");
    • }
    • void draw(){
    •   image=(img,x,y,100,100);
    • }
  • 加入重力加速度
    • float vx=3,vy=-20;
    • void draw(){
    •   x+=vx;
    •   y+=vy;
    •   vy+=0.98;
    • }


  • 左彈右彈連續彈///void draw()
    •   if(y>500){
    •     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);
    •     }
    •   }

  • 畫出刀子(滑鼠)///void draw()
    • background(0);///畫面更新(黑色)
    • stroke(255);line(mouseX,mouseY,pmouseX,pmouseY);///白色刀子
  • 切到水果水果重生///void draw()
    • int fruitDie=0;
    • if(x<mouseX&&mouseX<x+100&&y<mouseY&&mouseY<y+100)fruitDie=1;
    • 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;
    •   }
  • 完整水果忍者(初版)程式
    • PImage img;
    • float x=100, y=200,vx=3,vy=-20;
    • int fruitDie=0;
    • void setup(){
    •   size(500,500);
    •   img=loadImage("fruit.png");
    • }
    • 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 processing.sound.*;///聲音外掛
                                                                • SoundFile sound1;
                                                                • SoundFile sound2;
                                                                • void setup(){
                                                                •   size(300,300);
                                                                •   sound1=new SoundFile(this,"cat1a.mp3");
                                                                •   sound2=new SoundFile(this,"dog_barking1.mp3");
                                                                •   sound1.loop();///循環播放
                                                                • }
                                                                • void draw(){
                                                                • }
                                                                • void mousePressed(){
                                                                •   sound2.play();///播一次
                                                                • }
                                                              • [法二]
                                                                • import ddf.minim.*;
                                                                • Minim minim;
                                                                • AudioPlayer player1;
                                                                • AudioPlayer player2;
                                                                • void setup()
                                                                • {
                                                                •   size(300,300);
                                                                •   minim = new Minim(this);
                                                                •   player1 = minim.loadFile("cat1a.mp3");
                                                                •   player1 = minim.loadFile("dog_barking1.mp3");
                                                                •   player1.loop();
                                                                • }
                                                                • void draw(){}
                                                                • void mousePressed(){
                                                                •   player2.rewind();
                                                                •   player2.play();
                                                                • }

                                                                                            沒有留言:

                                                                                            張貼留言