Senin, 10 Juni 2013


Processing adalah bahasa pemrograman dan lingkungan pemrograman (development environment) open source untuk memprogram gambar, animasi dan interaksi. Digunakan oleh pelajar, seniman, desainer, peneliti, dan hobbyist untuk belajar, membuat prototipe, dan produksi. Processing digunakan untuk mengajarkan dasar-dasar pemrograman komputer dalam konteks rupa dan berfungsi sebagai buku sketsa perangkat lunak (software) dan tool produksi profesional. Selain itu processing juga dapat di gunakan sebagai bahasa pemrograman untuk pembuatan game. Bagi anda yang tertarik untuk membuat game dengan bahasa ini, ikuti langkah-langkah berikut. Yang dimulai dari perancangan, implementasi hingga tahap uji coba.

Perancangan Program
Program kali ini menggunakan processor dengan nama game Goo Goo. Game ini memerlukan kelincahan tangan. Game ini di tuntut untuk menangkap bola-bola yang lebih kecil darinya, jangan sampai menyentuh bola yang lebih besar darinya. Apabila menyentuh lebih besar darinya akan game over.

LISTING PROGRAM ^^

float x;
float y;
float easing = 0.02;
int r = 8;
int gameCase = 1;
int num = 35;
float[] bugx = new float [num];
float[] bugy = new float [num];
int[] bugr = new int [num];
float[] speedx = new float [num];
float[] speedy = new float [num];
float a = 0.05;

void setup() {
  size (800, 600);
  smooth();
  ellipseMode (CENTER); 
  for (int i=0; i
    bugx[i] = random (0, width);
    bugy[i] = random (0, height);
    bugr[i] = int (random (0, 35));
  }
  x = random (0, width);
  y = random (0, height);
}

void draw() {
  background (100, 200, 100);
  noStroke();
  fill (0,0,100);
  for (int i=0; i
    ellipse (bugx[i], bugy[i], bugr[i]*4, bugr[i]*4);
  }
  fill (255, 255, 100);
  ellipse (x, y, r*4, r*4); 
  for (int i=0; i
    float z=(bugx[i]-x)*(bugx[i]-x)+(bugy[i]-y)*(bugy[i]-y)-(bugr[i]+r)*(bugr[i]+r);
    if (z<0 amp="" bugr="" i="">r) {
      gameCase = 0;
    }
  } 
  if (gameCase == 0) {
    gameover();
  } else {
    float targetX = mouseX;
    float targetY = mouseY;
    x += (targetX - x) * easing;
    y += (targetY - y) * easing;
      for (int i=0; i
      move (i);
    }
  } 
  for (int i=0; i
    if ((bugx[i]-x)*(bugx[i]-x)+(bugy[i]-y)*(bugy[i]-y)-(bugr[i]+r)*(bugr[i]+r)<0 amp="" bugr="" i="" o:p="" r="">
      r = int (sqrt (r*r + bugr[i]*bugr[i]));
      bugr[i] = 0;
    }
  } 
  int sum = 100;
  for (int i=0; i
    sum += bugr[i];
  }
  if (sum == 100) {
    win();
  }
}
void move(int i) {
    speedx[i] += random (-a, a);
    speedy[i] += random (-a, a);
    bugx[i] += speedx[i];
    bugy[i] += speedy[i];
    if (bugx[i]<-10 o:p="">
      bugx[i] += width;
    }
    if (bugx[i] > width+10) {
      bugx[i] -= width;
    }
    if (bugy[i] < -10) {
      bugy[i] += height;
    }
    if (bugy[i] > height+10) {
      bugy[i] -= height;
    }
  }
void gameover() {
  fill (240, 40, 40);
  textSize (65);
  textAlign(CENTER);
  text ("Game Over", width/2, height/2);
}
void win() {
  fill (255);
  textSize (65);
  textAlign(CENTER);
  text ("Congratulation!", width/2, height/2);
  textSize (30);
  text ("Bacterial Cleared!", width/2, height/2+50);
}
Pada saat permainan berlangsung:




Tidak ada komentar:

Posting Komentar