sainTutorial Membuat Game Flash Sederhana

Pada tutorial ini saya menggunakan action script 2.0 dan adobe flash CS3. Maaf sebelumnya jika pada gambar terdapat bahasa yang aneh. Saya sendiri tidak tahu itu bahasa apa. Pembukaan 1. Buatlah new flash document dengan ukuran stage 500x400 pixels dan 20 fps. 2. Buatlah 3 layer baru dan beri masing masing layer dengan nama bg, simbol,label dan action. 3. Seleksi seluruh frame 1 pada semua layer lalu sambil menekan tombol ctrl seleksi seluruh frame 5,frame 10,frame 15,frame 20, frame 30, dan frame 35 di semua layer, lalu tekan F7. 4. Seleksi frame 40 di semua layer,lalu tekan F5. 5. Klik layer label lalu. Klik frame 1 dan buka panel properties lalu ketikkan menu pada kolom frame label. Ulangi hal yang sama pada frame 5,10,15,20,30,dan 35 dengan masing masing nama about,help,highScore,game,gameover dan win. 6. Klik frame 1 layer action lalu tekan F9. masukkan script : stop(); lakukan hal yang sama pada frame 5,10,15,20,30,35 layer action. Lihat pada gambar 1.1

Gambar 1.1 7. Klik frame 1 layer simbol dan buatlah 5 tombol play,highscore,help,about dan exit. 8. Klik tombol play lalu tekan F9,masukkan script : on(release){ gotoAndPlay("game") } 8. klik tombol highscore lalu tekan F9, masukkan script :

masukkan script : on(release){ gotoAndPlay("about") } 11.Lihat pada gambar. klik tombol exit lalu tekan F9. klik tombol help lalu tekan F9. } 12. Buat 2 buah dynamic text di frame 15 layer simbol beri masing-masing dengan nama variable tampil1 dan tampil 2. masukkan script : on(release){ gotoAndPlay("help") } 10. ""). klik tombol about lalu tekan F9. masukkan script : on (release) { fscommand("quit". .dan ketakkan di kiri atas stage. Buat sebuah tulisan menggunakan static text “HIGHSCORE” pada frame 15 layer bg.on(release){ gotoAndPlay("highScore") } 9. Tekan F9 lalu masukkan script : on(release){ gotoAndPlay("menu") } Copy tombol back tersebut lalu paste-kan di frame 10 dan 15 layer simbol. 13. buat tombol back di frame 5 layer simbol.

pemain. DataSkor. } for (i=0. if (!DataSkor.data. namanya:"None"}).data.push({skornya:0. namanya:"None"}).skornya+newline. DataSkor. DataSkor = SharedObject. namanya:"None"}). i++) { tampil2 += DataSkor.data. namanya:"None"}).pemain. DataSkor.pemain. namanya:"None"}).sortOn("skornya".push({skornya:0.pemain.data. DataSkor.data.pemain. DataSkor. namanya:"None"}).sortOn("skornya".push({skornya:0. } Membuat Bagian Utama Game 14. dan nyawa_txt.push({skornya:0. DataSkor. DataSkor.Array. i<10. .NUMERIC).data.push({skornya:0.push({skornya:0.namanya+newline.pemain.pemain[i].push({skornya:0.data.data.data. DataSkor. Lihat pada gambar.push({skornya:0. namanya:"None"}).push({skornya:0. namanya:"None"}). namanya:"None"}).NUMERIC).tekan F9 lalu tambahkan script : tampil1 = "".level_txt.getLocal("masukkanSkor").data.push({skornya:0.pemain[i].pemain. DataSkor.Array. } for (i=0.data. i<10.pemain.pemain) { DataSkor.pemain. Klik frame 20 layer simbol dan buat 2 buah static text.pemain = new Array().DESCENDING | Array.pemain.2 Klik frame 15 layer action.data.pemain.data. DataSkor.Gambar 1. buat 3 buah dynamic text masing-masing beri nama variable skor_txt.masing-masing ketikkan “score :” dan “level :” [tanpa tanda kutip] 15.pemain.data. i++) { tampil1 += DataSkor. tampil2 = "". DataSkor. DataSkor.data.data. namanya:"None"}).DESCENDING | Array.

Beri tanda centang pada export for actionscript. Masukkan identifier seperti yang tertulis diatas. Ulangi langkah 18 pada movieclip tulang.pada kolom instance name ketikkan kecoa. 20. 18. Convert menjadi movie clip dan masing-masing diberi nama : kotoran linkage:kotoran kecoa bonus_nilai linkage:bonus_nilai tulang linkage:tulang bonus_nyawa linkage:bonus_nyawa d_kotoran linkage:d_kotoran s_kotoran linkage:s_kotoran tengkorak linkage:tengkorak 17.Gambar 1. d_kotoran. dan tengkorak. hapus seluruh movieclip tersebut dari stage kecuali movieclip kecoa . buka panel properties. Klik kanan movie clip bonus_nilai pada library.bonus_nyawa. . kotoran.3 16. Klik movieclip kecoa. Klik linkage. 19. s_kotoran. buat karakter kecoa beserta musuh serta bonusnya seperti berikut atau sesuai kreativitas anda.

Beri nama dan instance name :  Nama :dinding_kiri. instance name :dinding_kiri  Nama :dinding_bwh. Ulangi langkah 23 pada kotak di kiri. instance name :dinding_bawah  Nama :dinding_kanan. Pastikan titik registration berada di tengah bawah.convert menjadi movieclip. Klik movieclip dinding_atas dan beri instance name dinding_atas.sesuaikan dengan panjang dan lebar stage. 22. 24.lalu kecilkan ukurannya dan letakkan di sebelah dynanic text nyawa_txt. Buatlah 4 buah persegi panjang berwarna putih. Convert static text tersebut menjadi movieclip dengan nama nextLevel.5 23.4 21. instance name :dinding_kanan 25.bawah dan kanan. Drag movie clip kecoa dari library ke stage [tanpa instance name]. .Gambar 1. Klik frame 20 layer bg. Gambar 1. Buatlah sebuah static text bertuliskan NEXT LEVEL. Beri nama dinding_atas. Seleksi kotak putih yang atas. Lihat pada gambar.

nyawaMax = 7. kecepatanNyawa = 20.tekan F7.onEnterFrame = function() { nyawa_txt = nyawa. } if (Key. kecepatanTulang = 5.6 29._y += 13. kecepatanKotoran = 4. klik frame 11 layer 1 dan masukkan action script : stop().tekan F9 lalu tambahkan script : nyawa = 7. Beri tanda centang pada export for actionscript lalu masukkan identifier nextLevel.isDown(Key.isDown(Key. Lihat pada gambar. Hapus movieclip nextLevel dari stage. } if (Key.DOWN)) { this. skor = 0._y -= 13. level = 1.pilih linkage. 27. Klik frame 11 layer 1. Klik 2 kali movieclip nextLevel untuk mengeditnya. Klik frame 10 layer 1 lalu tekan F6. vskor = skor. Gambar 1. Klik frame 20 layer action. if (Key. 28.isDown(Key.26. Kembali ke stage utama dengan menakan ctrl+E. Klik kanan movieclip nextLevel pada library.RIGHT)) { this. waktu = 5. waktu++. kecoa. level_txt = level. kecepatanBonus = 10.UP)) { this._x += 13. .

tulang._x += kecepatanKotoran. {_x:0.onEnterFrame = function() { this.LEFT)) { this. d_kotoran.getNextHighestDepth(). {_x:20+random(430).hitTest(dinding_kiri)) { this.hitTest(dinding_kanan)) { this.getNextHighestDepth().getNextHighestDepth(). kotoran = attachMovie("kotoran". } if (this.} if (Key.getNextHighestDepth(). } if (this. } }.onEnterFrame = function() { this._y -= 10. } }. _y:1}). nyawa -= 2. this. } if (this. _root.hitTest(kecoa)) { skor += 75.onEnterFrame = function() { this. } if (waktu == 10) { waktu -= 10. d_kotoran = attachMovie("d_kotoran". _y:50+random(300)}).removeMovieClip(). this._x += kecepatanKotoran._y += 10._x -= 10. if (waktu<=20) { waktu -= 10. } if (this.hitTest(kecoa)) { skor -= 100. _y:50+random(300)})._x += 10. if (this.hitTest(dinding_atas)) { this. "kotoran"+_root. kotoran.removeMovieClip(). } if (level>5) { if (waktu<=10) { waktu -= 10. "tulang"+_root. if (this. . "d_kotoran"+_root. _root. {_x:0.getNextHighestDepth(). this.hitTest(kecoa)) { nyawa--. if (this. tulang = attachMovie("tulang". _root.getNextHighestDepth()._y += kecepatanTulang.isDown(Key.hitTest(dinding_bawah)) { this._x -= 13._rotation -= 5.

bonus_nyawa. if (this. {_x:30+random(400). this._y += 5+random(2).getNextHighestDepth().hitTest(kecoa)) { skor += 1000. } }. tengkorak. {_x:550.onEnterFrame = function() { this. } }. "tengkorak"+_root. s_kotoran = attachMovie("s_kotoran"._rotation -= random(1).hitTest(kecoa)) { skor -= 1000. _root.removeMovieClip(). _y:0}).onEnterFrame = function() { this. "bonus_nyawa"+_root._y -= kecepatanKotoran.getNextHighestDepth().removeMovieClip(). } }.this.hitTest(kecoa)) { if (nyawa<nyawaMax) { nyawa++. if (this.getNextHighestDepth(). "s_kotoran"+_root. if (this. bonus_nyawa = attachMovie("bonus_nyawa". this. tengkorak = attachMovie("tengkorak". this. _root. } } if (level>6) { if (waktu<=20) { waktu += 15. this. } } if (level<6) { if (waktu<=20) { waktu -= 15.onEnterFrame = function() { this. } } }. _y:50+random(300)})._y += 10.removeMovieClip(). {_x:50+random(300). this.getNextHighestDepth(). } } if (level>3) { if (waktu<=25) { waktu -= 10. _y:450-random(30)}).getNextHighestDepth().getNextHighestDepth(). s_kotoran. _root.removeMovieClip(). nyawa--. ._x -= kecepatanNyawa.

Buat sebuah dynamic text disebelah tulisan “your score :”. . g e t Nex tH i g hes tDep t h ( ) . } / / j i k a sudah menye lesa i k an l e v e l 10 maka menang i f ( l e v e l == 11) { gotoAndP lay ( "w i n " ) . _y :250 } ) . Klik frame 30 layer bg. bonus_n i l a i = at t a c hMov i e ( " b onus_n i l a i " . 31. {_x : 2 0+ r andom(430 ) . "nex t Leve l " . Buat 2 buah static text masing-masing bertuliskan “your sxore :” dan “your name :” [tanpa tanda kutip]. 32. 33. r emoveMov ieC l i p ( ) . Beri variable nama pada input text tersebut. l e v e l ++ .} (wak tu<23 ) { waktu += 10. r emoveMov ieC l i p ( ) . g e t Nex tH i g hes tDep t h ( ) . 200. Buat sebuah input text disebelah tulisan “your name :”. _roo t . Lalu drag tombol exit dari library ke stage. Beri variable skor pada dynamic text tersebut. th i s . i f ( t h i s . o n En t e r F r ame = func t i o n ( ) { th i s . h i t T e s t ( k e c oa ) ) { sko r += 250. Buat 2 buah tombol masing-masing diberi nama playAgain_btn dan save_btn. Klik frame 30 layer simbol. 34. } }. } }. kemudian buat tulisan GAME OVER menggunakan static text. _ y += kecepa t anBonus . kecepa t anNyawa += 2. r emoveMov ieC l i p ( ) . kecepa t anTu l ang += 2. } } i f (sko r>=2500* l e v e l and l e v e l < 10 ) { nex tLeve l = at t a c hMov i e ( " n e x t L e v e l " . th i s . kecepa t anBonus++ . _y :1 } ) . gotoAndP lay ( " g ameove r " ) . _ r o t a t i o n += 5. "bonus_n i l a i " + _ r o o t . bonus_n i l a i . {_x : 2 50 . nex tLeve l . kecepa t anKo t o r a n++ . } if Pembuatan Bagian Akhir 30. } / / j i k a nyawa = 0 maka gameover i f (nyawa<1) { nex tLeve l .

d a t a . . p u sh ( { s k o r n y a : 0 . Penyelesaian 42. contoh lihat pada gambar . p ema i n . p ema i n . Klik tombol exit. Klik frame 35 layer action.nama). d a t a . d a t a . d a t a . g e t L o c a l ( " masukkanSko r " ) . d a t a . namanya: "None " } ) .push({skornya:score. 41. DataSko r . p ema i n . i f ( !Da t aSko r . p ema i n = new Ar ray ( ) . Klik frame 35 layer bg.lalu tambahkan script yang sama seperti frame 30 layer action. p u sh ( { s k o r n y a : 0 . 36. d a t a . p ema i n . d a t a .data. p u sh ( { s k o r n y a : 0 . Klik tombol playAgain_btn. d a t a .onRelease = function() { simpanScore(skor.35. " " ) } 38. DataSko r . p u sh ( { s k o r n y a : 0 . DataSko r . namanya: "None " } ) . 39. namanya: "None " } ) . DataSkor. p laye r ) { DataSko r = SharedOb jec t . gotoAndStop("highscore") }. Klik frame 5 layer bg. d a t a . } save.flush(). DataSko r . namanya: "None " } ) . DataSko r . } DataSkor. d a t a . DataSko r . namanya: "None " } ) . DataSko r . p u sh ( { s k o r n y a : 0 . 40. d a t a . p ema i n . p u sh ( { s k o r n y a : 0 .buka panel properties dan masukkan save sebagai instance name. Tambahkan keterangan tentang game yang Anda buat tersebut. namanya: "None " } ) . d a t a . namanya:player}). p u sh ( { s k o r n y a : 0 .tekan F9 lalu masukkan script : on ( r e l e a se ) { f scommand( " qu i t " . DataSko r . p ema i n . p u sh ( { s k o r n y a : 0 . p ema i n . namanya: "None " } ) . func t i o n s impanScore ( s c o r e .tekan F9 lalu masukkan script : nama = " I n s e r t your name" . Klik tombol save_btn. DataSko r . namanya: "None " } ) . namanya: "None " } ) . p u sh ( { s k o r n y a : 0 . p u sh ( { s k o r n y a : 0 . Tambahkan tulisan “CONGRATULATION!! YOU WIN!!” menggunakan static text. namanya: "None " } ) . p ema i n ) { DataSko r . DataSko r . p ema i n . p ema i n . Klik frame 30 layer action.pemain.tekan F9 lalu masukkan script : on( re l e a se ) { gotoAndP lay ( "menu " ) } 37. p ema i n . Copy seluruh isi frame 30 layer simbol lalu paste-kan ke frame 35 layer simbol.

bonus_nilai. tulang. s_kotoran.8 . Klik frame 10 layer bg. dan tengkorak ke dalam kotak tersebut dan perkecil ukurannya. Buat tulisan “HELP” mrnggunakan static text. kotoran. d_kotoran. Drag movieclip kecoa. Buat sebuah kotak ditengah-tengah stage. bonus_nyawa. Gambar 1. 44.Gambar 1.beri keterangan dengan static text dan atur seperti gambar berikut. Sesuaikan posisinya.7 43. 45.

Mungkin masih ditemukan banyak kesalahan pada tutorial ini. Letakkan background tersebut di frame 1 layer bg. Anda bisa membuatnya sendiri. Mohon dimaklumi. Simpan game dengan nama the bone eater cockroach Demikian tutorial yang singkat ini. karena yang membuat tutorial ini masih sangat pemula (hehehe).46.abdurrohim@gmail.com copyright © 2010 husain. 48. Contact person:  husain.inc . Jika Anda menginginkan background pembuka yang lebih baik. Contoh background pembuka. Kritik dan saran akan Saya terima dengan senang hati.9 47. Gambar 1.com  therealtoxin@gmail.

Master your semester with Scribd & The New York Times

Special offer for students: Only $4.99/month.

Master your semester with Scribd & The New York Times

Cancel anytime.