Laman

Membuat Game Pertualangan Dengan Flash

   Dalam Pembahasan kali ini akan dijelaskan bagaimana cara membuat sendiri game pertualangan
sederhana dengan menggunakan aplikasi flash. Untuk membuat game tersebut sebelumnya kita harus tau apa saja yang diperlukan untuk membuat game pertualangan. Dalam logika, saat memainkan game kita menggerakkan pemain berjalan di panggung permainan. berarti, kita membutuhkan dua objek, yaitu pemain dan panggung area. detail dari kedua objek tersebut:
•> Pemain
   - Dapat berjalan ke kanan
   - Dapat berjalan keKekiri
   - Dapat Loncat
   - Jatuh terkena gravitasi
•> Panggung
   - Tempat pijakan pemain
  Dari hipotesa atau kesimpulan awal tadi, marilah memulai membuat game pertualangan dengan tangan
sendiri dengan membuka dokumen baru.
1. Tekan (Ctrl+N) pilih flash document, kemudian klik kanan pada lembar kerja pilih Document Properties maka akan muncul jendela dialog. kemudia isikan angka 30 pada Frame Rate, Dimension 600 x 400 dan Background color putih, Setelak itu Klik Ok.


2. Setelah itu menggambar sebuah pemain. Disini saya menggunakan Rectangle Tool(R) untuk membuat pemain. Anda bisa kreasikan sendiri pemain anda.

3. Kemudian seleksi pemain dan klik kanan pada pemain, pilih Convert to Symbol..

4. Beri nama pemain dengan nama "player" pada kolom name, pilih Movie Clip pada pilihan type, dan pilih poros di tengah pada pilihan Registration, kemudian klik OK.

5. Kemudian klik Movie clip player dan berikan nama instansi di properties>Instance Name dengan nama instansi "player".

6. Setelah itu gambar panggung area untuk tempat berjalan pemain. Disini saya juga menggunakan Rectangle Tool(R) untuk membuat panggung seperti gambar dibawah. Kemudian, seleksi semua gambar panggung area, buat menjadi Movie clip dengan klik kanan pilih Convert to Symbol.

7. Beri nama "tanah" pada kolom Name, pilih Movie Clip pada pilihan Type, dan tentukan registration, kemudian klik OK.

8. Kemudian klik Movie clip tanah dan berikan nama instansi di properties>Instance Name dengan nama instansi "tanah".

9. Setelah itu klik kanan pada layer1 frame pertama, pilih Actions.

10. Masukkan kode dibawah ini pada jendela Actions.

//Kode dibawah ini disertai dengan penjelasan\\
stop();
//deklarasi platform
t = _root.tanah;
//deklarasi player
p = _root.player;
xspeed = 0;
yspeed = 0;
max_yspeed = 10;
walk_speed = 4;
// keadaan saat loncat ya
jumping = true;
// gravitasi & kekuatan loncat
gravity = 1;
jump_power = 10;
//fungsi player dalam frame
player.onEnterFrame = function() {
 //jika ditekan ke kiri
 if (Key.isDown(Key.LEFT)) {
  xspeed = -walk_speed;
 }
 //jika ditekan ke kanan 
 if (Key.isDown(Key.RIGHT)) {
  xspeed = walk_speed;
 }
 //jika ditekan tombol ke atas dan tidak saat loncat 
 if ((Key.isDown(Key.UP)) and !jumping) {
  yspeed -= jump_power;
  jumping = true;
 }
 //--------script jatuh seakan2 terkena grafitasi-----------\\ 
 // jika keadaan saat loncat                    
 if (jumping) {
  yspeed += gravity;
 }
 //jika yspeed>max_yspeed 
 if (yspeed>max_yspeed) {
  yspeed = max_yspeed;
 }
 //--------akhir script seakan2 terkena gravitasi-----------------\\ 
 //jika platform dibawah kaki dan tidak saat loncat dan tidak saat naik
 if (level_under_my_feet() and !jumping) {
  yspeed = 0;
 }
 // memerintahkan player untuk melakukan gerakan 
 // ->masukkan nilai-nilai x, y player ke dalam variabel forecast
 forecast_x = this._x+xspeed;
 forecast_y = this._y+yspeed;
 // mengontrol platform
 //ketika platform menyentuh bagian bawah player lakukan
 while (t.hitTest(forecast_x, forecast_y+this._height/2-1, true)) {
  forecast_y--;
  xspeed = 0;
  yspeed = 0;
  jumping = false;
 }
 //ketika platform menyentuh bagian atas player lakukan
 while (t.hitTest(forecast_x, forecast_y-this._height/2, true)) {
  forecast_y++;
  yspeed = 0;
 }
 //ketika platform menyentuh bagian kiri player lakukan
 while (t.hitTest(forecast_x-this._width/2+1, forecast_y, true)) {
  forecast_x++;
  xspeed = 0;
 }
 //ketika platform menyentuh bagian kanan player lakukan
 while (t.hitTest(forecast_x+this._width/2, forecast_y, true)) {
  forecast_x--;
  xspeed = 0;
 }
 //kembalikan nilai forecast ke player agar player begerak sesuai event
 this._x = forecast_x;
 this._y = forecast_y;
 // hentikan gerakan setelah event terjadi
 xspeed = 0;
 //membatasi lebar gerak karakter 
 if (p._x-(p._width/2)<=0) {
  p._x = p._width/2;
 } else if (p._x+(p._width/2)>=600) {
  p._x = 600-(p._width/2);
 }
 //jika player jatuh melebihi platform 
 if (p._y>=600) {
  p._x = 80;
  p._y = 180;
 }
 if (t.hitTest(player._x, player._y+player._height/2, true)) {
  jumping = false;
 } else {
  jumping = true;
 }
};
//end finction player
//fungsi platform ketika dibawah  player
function level_under_my_feet() {
 return t.hitTest(player._x, player._y+player._height/2, true);
}
11. Setelah itu tekan (Ctrl+Enter) untuk melihat hasil
  Script di atas hanyalah salah satu dari logika-logika yang saya berikan, anda bisa menambah dan menggunakan logika-logika kreasi anda. Apabila ingin mengedit panggung area, tinggal dobel klik movie clip tanah dan edit sesuka hati.
Selamat mencoba. Semoga berhasil dan menjadi inspirasi anda serta pengalaman yang menyenangkan.
Contoh file dapat di download disini

6 comments:

  1. Super ajib nih gan....
    ada lanjutannya ga gan ?
    kalo bisa buat game jaya header tuh..
    ha..ha

    salam kenal MORTEN JONATHAN

    newbiepc.blogspot.com

    ReplyDelete
  2. gan contoh.fla nya kok dah di delete.. saya mau download gak bisa.. butuh bantuan buat referensi saya nie..

    ReplyDelete
  3. Iya gan maaf linknya mati, Ziddu banyak iklnnya ganti dropbox. Silahkan mas gan. Semoga bermanfaat. ini linknya https://www.dropbox.com/s/udt90arm8vpp4e7/SimplePlatform.rar

    ReplyDelete
  4. gan minta contoh yang buat loncat" donk tapi scriptnya yg bisa di buat di hp

    ReplyDelete
    Replies
    1. Script yang loncat pas ini keadaan ketika tombol UP ditekan dan keadaan menyentuh tanah (jumping==false)
      //jika ditekan tombol ke atas dan tidak saat loncat
      if ((Key.isDown(Key.UP)) and !jumping) {
      yspeed -= jump_power;
      jumping = true;
      }

      Delete
  5. terimakasih tutorialnya sangat bermanfaat :)

    ReplyDelete

Silahkan