6/10/2015

Tugas Akhir - Membuat Game Tangkap Bola Dengan Macromedia Flash 8

  1. Buka Macromedia Flash 8, pilih Flash Document.
  2. Pada Frame 1 Layer 1, Gambarlah bola, Kemudian seleksi gambarnya, Klik kanan lalu pilih Convert to Symbol, Klik Advanced beri centang Export for ActionScript, beri nama bola pada name dan identifiernya.
  3. Setelah selesai gambarlah juga bola merah, bola hijau, dan keranjang.Langkah selanjutnya sama seperti langkah ke 2, untuk nama Identifernya bolamerah, bolahijau, dan keranjang.
  4. Sekarang kita mempunyai 4 buah gambar
  5. Hapus semua gambar yang sudah kita kemudian  Tekan F9 di frame 1, lalu isikan stop();
  6. Kemudian di layer pertama klik kanan di frame kedua pilih insert key frame, lakukan hal yang sama di frame lainnya sampai frame 4.
  7. Maksud dari frame yang ada lima ini frame 1 untuk permulaan permainan, frame 2 keterangan permainan, frame 3 untuk permainannya, dan frame 4 untuk game overnya.
  8. Sekarang di frame 1 layer 1 buat tulisan Game Tangkap Bola kemudian buat sebuah button mulai dan button keluar seperti gambar di bawah ini
  9. Seleksi button mulai kemudian tekan F9 lalu isikan
    on(release)
    {//berpindah ke game (pada frame 2)
    gotoAndStop(2);}
  10. Seleksi Buton Keluar kemudian tekan F9 lalu isikan
    on(release){
    fscommand("quit",true);
    }
  11. Lanjut ke frame 2 layer 1 desain gambar seperti di bawah ini yang merupakan sebuah keterangan permainan game yang disertai seperti berikut :
  12. seleksi button Mengerti lalu tekan F9 dan isikan ActionScipt sebagai berikut
    on(release){
    //berpindah ke game (pada frame 3)
    gotoAndStop(3);}
  13. Setelah selesai lanjut ke frame ketiga buat dua buah dynamic text dengan var waktu dan var score lalu buatlah gambar nyawa dari persegi panjang kemudian seleksi gambar, klik kanan, convert to symbol pilih movie clip beri instance namenya healthbar_mc. Sebagai berikut :
  14. Tekan F9 di frame ketiga isikan dengan ActionScript sebagai berikut :
    //memanggil keranjang dari library dan ditaruh ke _root (stage)
    //deklarasi variabel, ubah untuk menentukan maksimum health
    max_health = 1000;
    health = 1000;
    healthbar_mc.onEnterFrame=function(){
    //jika health minus
    if(health < 0){
    health = 0;
    }
    //jika health over
    if(health > max_health){
    health = max_health;
    }
    //persentase health
    var persentase = (health / max_health) * 100;
    healthbar_mc._xscale = persentase;
    }
    _root.attachMovie("keranjang","keranjang",0,{_x:275,_y:345});
    //secara berkala setiap 1000 milidetik memanggil fungsi panggilbola
    var bolaInterval = setInterval(panggilbola,500);
    //secara berkala kurangi waktu setiap 1000 milidetik / 1 detik
    var waktuInterval = setInterval(kurangiWaktu,500);
    //mereset waktu
    score = 0;
    waktu =30;
    //berjalan secara terus menerus
    _root.onEnterFrame=function(){
    //posisi keranjang ditentukan oleh posisi x dari mouse
    keranjang._x = _xmouse;
    }
    //fungsi panggilbola, digunakan untuk memanggil bola dari langit
    function panggilbola(){
    //menciptakan angka random
    var angkaRandom = random(10);
    var objekYangDipanggil = "";
    //melihat angka random
    if(angkaRandom>=0 && angkaRandom<=6){
      objekYangDipanggil = "bola";
      }else if(angkaRandom>=6 && angkaRandom<=7){
      objekYangDipanggil = "bolahijau";
      }else{
      objekYangDipanggil = "bolamerah";
      }
      //depth digunakan sebagai kedalaman saat menambahkan movieclip ke stage
      var depth = _root.getNextHighestDepth();
      //memanggil objek movieclip ke stage
      var objek = _root.attachMovie(objekYangDipanggil, objekYangDipanggil+"-"+depth, depth);
      objek._x = random(500);
      objek._y = 0;
      //properti nama digunakan sebagai pengenal
      objek.nama = objekYangDipanggil;
      //agar objek dapat bergerak
    objek.onEnterFrame=function(){
      //menggerakkan objek ke bawah
      this._y += 10;
      //mengecek kondisi jika bersentuhan dengan keranjang
      if(this.hitTest(_root.keranjang)){
      //menambah atau mengurangi score
      if(this.nama == "bola"){
      score += 10;
      }else if(this.nama == "bolahijau"){
      score += 20;
      }else{
      score -= 10;
    health -=200;
      }
      //kemudian menghapusnya
      delete this.onEnterFrame;
      this.removeMovieClip();
      }
    if (health == 0){
    for(i=0;i<=_root.getNextHighestDepth();i++){
    _root.getInstanceAtDepth(i).removeMovieClip();
    }
    //menghilangkan semua interval
    clearInterval(bolaInterval);
    clearInterval(waktuInterval);
    //pergi ke frame 4
    _root.gotoAndStop(4);
    }
      //mengecek kondisi jika objek telah melewati batas
      if(this._y>=450){
                    //menghapus objek tersebut
    delete this.onEnterFrame;
    this.removeMovieClip();
    }
    }
    }
    //fungsi kurangi waktu
    function kurangiWaktu(){
    waktu -= 1;
    //jika waktu habis, pergi ke game over
    if(waktu == 0){
    //membersihkan semua objek di stage
    for(i=0;i<=_root.getNextHighestDepth();i++){
    _root.getInstanceAtDepth(i).removeMovieClip();
    }
    //menghilangkan semua interval
    clearInterval(bolaInterval);
    clearInterval(waktuInterval);
    //pergi ke frame 4
    _root.gotoAndStop(4);
    }
    }
  15. Sekarang klik di frame keempat buatlah sebuah buton dengan tulisan ulang  dan sebuah static text dengan tulisan game over lalu dynamic text dengan var score seperti gambar berikut :
  16. Untuk ActionScript button Ulang sebagai berikut
    on(release){
    //berpindah ke game (pada frame 1)
    gotoAndStop(1);
    }
Untuk Mencoba Game : Download Game



Mulai menulis blog sejak tahun 2012. Saat ini sedang disibukkan dengan karir dibidang IT nya.

1 komentar so far

Terima Kasih sangat bermanfaat

Komentar yang mengandung spam / link aktif akan secara otomatis disembunyikan. Mohon maaf atas ketidaknyamanan jika pertanyaan telat ataupun tidak terbalas karena keterbatasannya waktu. Silahkan hubungi kami di menu Contact Us. Terimakasih
EmoticonEmoticon