Tugas Akhir - Membuat Game Tangkap Bola Dengan Macromedia Flash 8
Buka Macromedia Flash 8, pilih Flash Document.
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.
Setelah selesai gambarlah juga bola merah, bola hijau, dan keranjang.Langkah selanjutnya sama seperti langkah ke 2, untuk nama Identifernya bolamerah, bolahijau, dan keranjang.
Sekarang kita mempunyai 4 buah gambar
Hapus semua gambar yang sudah kita kemudian Tekan F9 di frame 1, lalu isikan stop();
Kemudian di layer pertama klik kanan di frame kedua pilih insert key frame, lakukan hal yang sama di frame lainnya sampai frame 4.
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.
Sekarang di frame 1 layer 1 buat tulisan Game Tangkap Bola kemudian buat sebuah button mulai dan button keluar seperti gambar di bawah ini
Seleksi button mulai kemudian tekan F9 lalu isikan
on(release) {//berpindah ke game (pada frame 2) gotoAndStop(2);}
Seleksi Buton Keluar kemudian tekan F9 lalu isikan
on(release){ fscommand("quit",true); }
Lanjut ke frame 2 layer 1 desain gambar seperti di bawah ini yang merupakan sebuah keterangan permainan game yang disertai seperti berikut :
seleksi button Mengerti lalu tekan F9 dan isikan ActionScipt sebagai berikut
on(release){ //berpindah ke game (pada frame 3) gotoAndStop(3);}
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 :
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); } }
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 :
Untuk ActionScript button Ulang sebagai berikut
on(release){ //berpindah ke game (pada frame 1) gotoAndStop(1); }
Posting Komentar