2013年11月11日 星期一

crazy zombie shoot 其中作品展示!!!!


我們是製作手機小遊戲的zombie shoot改制做成電腦版並且延伸
遊戲規則
利用1-8鍵盤,按下最下排的zombie位置即可得1分,以此類推
如果你射殺的zombie超過50隻,就會變成紅色的zombie並且殺一隻提高為得2分
計時30秒,累計你射殺的zombie數,最後會統計得分於畫面
配合背景音樂,讓你隨著律動玩遊戲ㄏㄏ

因為此processing為太新版
所以顯示不出國字
舊版即可

程式碼:
import ddf.minim.*;
Minim m;
AudioPlayer player;
int []bz=new int[1000];
PImage imgZombie;
PImage imgRZombie;
PImage imgShoot;

void setup() {

  size(800, 600);
  imgZombie=loadImage("zombie.jpg");
  imgRZombie=loadImage("Rzombie.jpg");
  imgShoot=loadImage("shoot.jpg");
  for (int i=0;i<1000;i++) {
    bz[i]=int(random(8));
  }


  m = new Minim(this);  //
  player = m.loadFile("hww.mp3");
  player.play();  //播放背景音樂
}

int now=0;
int a;
int total=0;
int countDown=90;
int countDown2=1860;

void draw() {
  int a=0;
  if (a==0) {
    if (countDown>0) {     //倒數三秒準備開始遊戲
      background(70, 53, 1);
      countDown--;
      textSize(100);
      text(countDown/30+"秒", 350, 300);
      return;
    }
    a++;
  }
  background(70, 53, 1);
  if (a==1) {

    if (countDown2>0) {  //倒數30秒遊戲中
      countDown2--;
      textSize(50);
      text(countDown2/60+"秒", 20, 40);
      for (int i=now;i<now+5;i++) {
        if (now<=50)image(imgZombie, bz[i]*100, 400-(i-now)*100);
        if (now>50)image(imgRZombie, bz[i]*100, 400-(i-now)*100);
      }
      image(imgShoot, 0, 500);
      image(imgShoot, 100, 500);
      image(imgShoot, 200, 500);
      image(imgShoot, 300, 500);
      image(imgShoot, 400, 500);
      image(imgShoot, 500, 500);
      image(imgShoot, 600, 500);
      image(imgShoot, 700, 500);
    }
    a++;
  }
 
  if (a==2) {
    if (countDown2/60==0)text("哇!好棒"+total+"分", 300, 350);//結尾計分
  }
}

void keyPressed() {

  if (key==bz[now]+'1')
  {
    if (total<50)a=1;
    if (total==50)a=2;
    if (countDown2/60==0)a=0;
    now++;
    total=total+a;
  }
}

沒有留言:

張貼留言