Animasi Tweening Animasi Masking Klik kanan dua kali untuk masuk ke menu edit symbol Tween. Penghitung waktu mundur Tombol jawaban benar

c. Pada frame ke dua, gambar perubahan gerakan dan lakukan penggambaran di frame-frame selanjutnya hingga animasi selesai Gambar 4.33. Membuat Animasi Frame by Frame

b. Animasi Tweening

Animasi Tweening sangat menghemat waktu karena tidak perlu membuat animasi secara frame by frame. Sebaliknya cukup hanya membuat frame awal dan frame akhir saja. Dua alasan utama mengapa penggunaan tween animation sangat baik yaitu karena mengurangi pekerjaan menggambar dan meminimalkan ukuran file. Langkah-langkah membuat sebuah tween animation adalah: a. Buat sebuah gambar, seleksi gambar kemudian tekan F8 pada keyboard. kemudian pilih Convert to Symbol. Pilih Movie Clip. b. Tekan tombol F6 pada frame ke enam, dan ubah posisi gambar pada posisi akhir gerakan. c. Klik kanan pada frame pertama lalu pilih Create Classic Tween. Gambar 4.34. Animasi Tweening

c. Animasi Masking

Masking dalam flash berarti menutup sebagian stage dan hanya memperlihatkan bagian tertentu. Animasi dengan masking biasanya dipergunakan untuk pembukaan sebuah presentasi atau memberikan efek yang lebih dinamis pada sebuah tombol. Langkah-langkahnya adalah sebagai berikut: a. Buat gambar, kemudian seleksi dan klik kanan pilih Convert to Symbol, Pilih Button. Gambar 4.35. Animasi Masking

b. Klik kanan dua kali untuk masuk ke menu edit symbol Tween.

c. Buat lingkaran dengan Oval Tool dengan fill Color

hitam, letakkan di layer paling atas. d. Klik kanan pada layer oval pilih Mask. e. Lakukan Test Movie dengan perintah Ctrl + Enter untuk melihat hasilnya.

4.4.3. Tahap Pengkodean

Pada tahap pengkodean, secara garis besar pembahasan program permainan ini dibagi menjadi tiga bagian permainan yaitu: permainan level mudah, level menengah dan level sulit. ActionScript yang di gunakan adalah ActionScript versi 2.0 yang digunakan untuk menjalankan aksi pada frame, movie clip maupun pada suatu tombol.

1. ActionScript pada awal frame aplikasi

Pada saat pengguna membuka aplikasi, akan muncul video pembuka. Video ini akan berputar hingga selesai, jika ingin langsung ke menu utama pengguna harus meng-klik video. Script yang dibutuhkan agar saat pengguna bisa masuk ke halaman selanjutnya adalah: on Press{ gotoAndPlay102; } Penjelasan: Script Keterangan on Press{ Jika mouse di klik, maka akan menjalankan intruksi di dalamnya. gotoAndPlay102; Aplikasi akan menuju dan menampilkan frame ke 102 Karena ActionScript 2.0 adalah bahasa pemrograman yang khusus untuk flash, maka penulisannya pun dapat diintegrasikan langsung pada setiap objek yang dibuat di Flash, Kode juga dapat ditulis di setiap frame sehingga kode tersebut dapat berjalan tergantung pada frame yang sedang ditampilkan. Untuk dapat diberikan script, maka movieclip di dalam flash harus diberi instance Name dan pada sound harus diberi identifier karena dipanggil dari library.

2. Game Level Mudah

Pada level mudah, pengguna akan bermain menyelesaikan permianan dengan waktu secepat mungkin. Semakin cepat menyelesaikan permaianan maka semakin baik kemampuannya dalam memecahkan teka-teki yang disajikan. a. Penghitung Waktu Penghitung waktu menggunakan detik dan menit, inisalisai parameter pada ActionScript menggunakan “fps”, “detik” dan “menit”. fps = 0; detik = 0; menit = 0; Fps ditambah 1 secara terus menerus, jika fps lebih dari 10 maka detik akan bertambah 1 onEnterFrame = function { menambahkan angka 0 pada second jika detik kurang dari 10 if detik10 { second = 0+detik; } else { second = detik; } menambahkan angka 0 pada minute jika menit kurang dari 10 if menit10 { minute = 0+menit; } else { minute = menit; } fps ditambah 1 secara terus menerus fps++; jika fps sama dengan 10 if fps == 10 { fps menjadi 0 fps = 0; detik ditambah 1 detik += 1; } Menambahkan menit jika detik lebih dari 60 jika detik sama dengan 60 if detik = 60 { detik menjadi 0 detik = detik-60; menit ditambah 1 menit += 1; } }; b. Tombol Jawaban Salah Jika pengguna salah dalam menjawab permainan, maka waktu akan bertambah 10 detik. on release{ detik +=10; } Diwaktu bersamaan fungsi attachMovie akan memanggil movieclip peringatan salah. salah = attachMoviemovieclip_salah, movieclip_salah+_root.getNextHighestDepth, _root.getNextHighestDepth, {_x:Stage.height1.25, _y:Stage.width18.5}; Function Menghilangkan movieclip pada layar ketika berada di frame 20 dengan perintah removeMovieClip. salah.onEnterFrame = function { jika movie clip movieclip_salah berada di frame 20 if this._currentframe == 20 { hilangkan movie clip ini dari stage removeMovieClipthis; nilai animasi jalan menjadi false animasi_jalan = false; } } c. Evaluasi akhir permainan Setelah pengguna menyelesaikan semua permainan dilevel mudah, akan ada halaman evaluasi dari hasil waktu yang dicapai. Pada halaman ini akan ditampilkan total waktu pencapaian penyelesaian permainan. menampilkan waktu akhir pada textfield waktu_tampil waktu_tampil = 0+menit + : + detik; Jika waktu yang dicapai kurang dari 3 menit, maka pada kolom TextField akan menampilkan informasi Daya ingat dan konsentrasimu cukup baik, pertahankan : Jika menit kurang dari 3 if menit = 3 { mudahkesimpulan_tampil.text=Daya ingat dan konsentrasimu cukup baik, pertahankan :; hasilmudah_tampil.text=Selamat, Kamu berhasil menyelesaikan level mudah; } Waktu yang di capai lebih dari 3 menit, akan muncul informasi Tingkatkan terus latihan mu ya... Jika menit lebih dari 3 else { mudahkesimpulan_tampil.text=Tingkatkan terus latihan mu ya..; hasilmudah_tampil.text=Maaf, Coba lagi ya; } d. Tombol kembali ke Menu Game Pada halaman hasil evaluasi game akan ada tombol kembali yang akan mengarahkan pengguna kembali ke Menu Game yang berada di farme ke-188. on release{ gotoAndStop188; }

3. Game Level Menengah

Pada game level menengah, pengguna diberikan tantangan untuk mengumpulkan nilai sebanyak-banyak, semakin banyak nilai yang di dapat maka semakin baik kemampuannya. a. Inisialisasi parameter nilai dan nama Sebelum permainan dimulai, pengguna diminta untuk memasukan nama. dan pemberian nilai pada awal permainan = 0. stop; benar = 0; salah = 0; nilai = 0; input_txt.text = ; alert_txt.text = ; _global.namaKamu = ; _global.scoreKamu = 0; Function disable tombol ketika nama belum di masukkan. onEnterFrame = function { if input_txt.text == { mulai_btn.enabled = false; mulai_btn._alpha = 20; } else { mulai_btn.enabled = true; mulai_btn._alpha = 100; } }; Function pengecekan nama minimal 3 karakter mulai_btn.onRelease = function { if lengthinput_txt.text=3 { alert_txt.text = ; _global.namaKamu = input_txt.text; nextFrame; } else { alert_txt.text = Masukan nama kamu terlebih dahulu minimal 3 karakter; } }; b. Tombol jawaban benar Jika pengguna menekan tombol benar maka nilai akan bertambah 5 dan berlanjut ke frame selanjutnya. on release{ nilai2 +=5; nextFrame; } c. Tombol jawaban salah Jika jawaban salah, nilai akan dikurangi 3, dan akan muncul movieclip dan langsung ke frame selanjutnya. on release{ nilai -=3; salah = attachMoviemovieclip_salah, movieclip_salah+_root.getNextHighestDepth, _root.getNextHighestDepth, {_x:Stage.height1.25, _y:Stage.width18.5}; salah.onEnterFrame = function { jika movie clip animasi2 berada di frame 20 if this._currentframe == 25 { hilangkan movie clip ini dari stage removeMovieClipthis; nilai animasi jalan menjadi false animasi_jalan = false; } } nextFrame; } d. Evaluasi akhir permainan level menengah Setelah pengguna menyelesaikan permainan di level menengah, maka pengguna akan masuk ke halaman evaluasi. Menampilkan total nilai yang dikumpulkan. nilai2_tampil = nilai2; Jika nilai lebih dari 50, akan menampilkan informasi Selamat, kini level menengah telah kamu selesaikan. Menunjukkan kemampuan pengguna cukup baik. if nilai2 = 50 { hasilmenengah_tampil.text=Daya ingat dan konsentrasimu cukup baik, pertahankan :; nama2_tampil.text=Selamat, kini level menengah telah kamu selesaikan; } Jika nilai kurang dari 50, maka akan menampilkan informasi Tingkatkan terus latihan mu ya.. dan Oopps. Kamu bisa latihan dahulu di pemanasan atau level mudah. else { hasilmenengah_tampil.text=Tingkatkan terus latihan mu ya..; nama2_tampil.text=Oopps. Kamu bisa latihan dahulu di pemanasan atau level mudah; }

4. Game Level Sulit

Pada game level sulit, pengguna harus menyelesaikan permainan sebelum waktu habis.

a. Penghitung waktu mundur

Waktu diberikan selama 60 detik. Jika waktu habis maka permaian usai dan akan langsung menuju ke frame 285 yang di beri label “waktu_habis”. start_time = getTimer; tot = 60; onEnterFrame = function{ wak = getTimer-start_time; detik = Math.floorwak1000; sis = tot - detik; ifsis0{ _root.twaktu = +sis; }else ifsis=0{ _root.twaktu = Waktu Habis; gotoAndStopwaktu_habis; delete this.onEnterFrame; } Jika pengguna berhasi menyelesaikan semua jawaban, maka akan mendapat nilai 50 dan langsung menampilkan frame “waktu_cukup”. if score == 50{ gotoAndStopwaktu_cukup; } };

b. Tombol jawaban benar

Ketika menjawab benar pengguna akan langsung ke frame selanjutnya untuk menyelesaikan permainan. on press{ nextFrame; } Setelah proses pembuatan dan pengkodingan selesai, dimana semua material sudah disusun di masing-masing frame, Kemudian tahap selanjutnya adalah mem-publish program menjadi format .exe, format program inilah yang nantinya dapat langsung dijalankan pada setiap komputer pengguna. Gambar 4.36. Proses Publish Program Setelah behasil dalam proses publish akan menghasilkan sebuah aplikasi yang berformat .exe Gambar 4.37. Program dengan format .exe

4.5. Testing Pengujian