Birthday Sale! Up to 40% off unlimited courses & creative assets Birthday Sale! Save up to 40%!
Advertisement
  1. Code
  2. Corona SDK
Code

Corona SDK: Buat Game Helikopter Rintangan

by
Difficulty:IntermediateLength:LongLanguages:

Indonesian (Bahasa Indonesia) translation by Ridho Anbia Habibullah (you can also view the original English article)

Dalam tutorial ini, saya akan menunjukkan kepada Anda cara membuat penghalang untuk menghindari permainan menggunakan Corona SDK. Anda akan belajar lebih banyak tentang kontrol sentuh, deteksi tabrakan, dan fisika. Tujuan dari gim ini adalah untuk menghindari sebanyak mungkin rintangan untuk mendapatkan skor tertinggi. Mari kita mulai.

1. Application Overview

App Overview

Dengan menggunakan grafik siap pakai, kami akan membuat gim menghibur menggunakan bahasa pemrograman Lua dan API Corona SDK. Pemain akan dapat memindahkan helikopter di layar dan perlu menghindari rintangan yang ada. Anda dapat memodifikasi parameter dalam kode untuk menyesuaikan permainan.


2. target perangkat

Target Device

Hal pertama yang harus kita lakukan adalah memilih platform yang kita inginkan untuk menjalankan aplikasi kita sehingga kita dapat memilih ukuran untuk gambar yang akan kita gunakan.

Platform iOS memiliki persyaratan berikut:

  • iPad 1/2/Mini: 1024px x 768px, 132 ppi
  • iPad Retina: 2048px x 1536px, 264 ppi
  • iPhone/iPod Touch: 320px x 480px, 163 ppi
  • iPhone/iPod Retina: 960px x 640px, 326 ppi
  • iPhone 5/iPod Touch: 1136px x 640px, 326 ppi

Karena Android adalah platform terbuka, ada banyak perangkat dan resolusi yang berbeda. Beberapa karakteristik layar yang lebih umum adalah:

  • Asus Nexus 7 Tablet: 800px x 1280px, 216 ppi
  • Motorola Droid X: 854px x 480px, 228 ppi
  • Samsung Galaxy SIII: 720px x 1280px, 306 ppi

Dalam tutorial ini, kami akan berfokus pada platform iOS dalam hal grafik. Khususnya, kami akan mengembangkan untuk iPhone dan iPod Touch. Namun, kode tutorial ini juga dapat digunakan dalam Anda menargetkan platform Android.


3. Interface

Interface

Kami akan menggunakan antarmuka pengguna yang sederhana yang melibatkan berbagai bentuk, tombol, bitmap, dan banyak lagi. Grafik yang akan kami gunakan untuk tutorial ini dapat ditemukan dalam proyek yang disertakan dengan tutorial ini.


4. Grafik Ekspor

Export Graphics

Tergantung pada perangkat yang Anda pilih, Anda mungkin perlu mengonversi grafik ke resolusi yang disarankan (ppi), yang dapat Anda lakukan di editor gambar favorit Anda. Saya menggunakan opsi Sesuaikan Ukuran ... di menu Alat dalam aplikasi Pratinjau di OS X. Ingat untuk memberikan gambar nama deskriptif dan menyimpannya di folder proyek Anda.


5. Application Configuration

Kami akan menggunakan file konfigurasi, config.lua, untuk membuat aplikasi menjadi layar penuh di seluruh perangkat. File konfigurasi menunjukkan ukuran layar asli dan metode yang digunakan untuk mengukur konten jika aplikasi dijalankan pada resolusi yang berbeda.


6. main.lua

Mari tulis aplikasi yang sebenarnya. Buka editor Lua pilihan Anda. Semua editor teks biasa akan berfungsi, tetapi disarankan untuk menggunakan editor teks yang memiliki penyorotan sintaks. Buat file baru dan simpan sebagai main.lua di folder proyek Anda.


7. Struktur Kode

Kami akan menyusun kode kami seolah-olah itu kelas. Jika Anda akrab dengan ActionScript atau Java, Anda harus menemukan struktur proyek yang sudah dikenal.


8. Hide Status Bar

Potongan kode ini menyembunyikan bilah status. Bilah status adalah bilah di bagian atas layar perangkat yang menunjukkan waktu, sinyal, dan indikator lainnya.


9. Import Physics

Kami akan menggunakan perpustakaan fisika untuk menangani tabrakan. Impor pustaka menggunakan cuplikan kode yang ditunjukkan di bawah ini.


10. latar belakang (Background)

Background

Latar belakang sederhana untuk antarmuka pengguna aplikasi. Cuplikan kode di bawah ini menarik latar belakang ke layar.


11. Title View

Title View

Ini adalah tampilan judul. Ini layar interaktif pertama yang muncul di game kami. Variabel-variabel ini menyimpan komponennya.


12. Credits View

Credits View

Tampilan kredit menunjukkan kredit dan hak cipta dari aplikasi. Variabel ini digunakan untuk menyimpannya.


13. Pesan Petunjuk (Instructions Message)

Instructions

Sebuah pesan dengan instruksi akan muncul di awal permainan dan akan hilang setelah ketukan pertama.


14.Helicopter

Helicopter

Ini adalah grafis helikopter. Pemain akan mengendalikan helikopter menggunakan kontrol sentuh.


15. Blocks

Blocks

Blok adalah rintangan yang perlu dihindari pemain.


16. Alert (waspada)

Alert

Peringatan ditampilkan ketika pemain merindukan bola dan permainan berakhir. Ini menampilkan pesan dan mengakhiri permainan.


17. Sounds (suara)

Sounds

Untuk menghidupkan permainan, kami akan menggunakan efek suara. Suara yang digunakan dalam permainan diperoleh dari as3soundfxr. Saya menemukan musik latar di playonloop.


18. Variables

Potongan kode berikut menunjukkan variabel yang akan kita gunakan. Baca komentar untuk memahami apa yang digunakan setiap variabel.


19. Deklarasikan Fungsi

Deklarasikan semua fungsi sebagai lokal di awal.


20. Constructor

Selanjutnya, kita membuat fungsi yang akan menginisialisasi logika permainan.


21. Tambahkan Tampilan Judul

Kami mulai dengan menempatkan tampilan judul di panggung dan memanggil fungsi yang akan menambah pendengar ketuk ke tombol.


22. Mulai Tombol Pendengar

Fungsi berikut menambahkan pendengar yang diperlukan ke tombol TitleView.


23. Tampilkan kredit

Layar kredit ditampilkan ketika pengguna mengetuk tombol sekitar. Seorang pendengar ketuk ditambahkan ke tampilan kredit untuk menutupnya ketika pengguna menyentuhnya.


24. Sembunyikan Kredit

Saat pengguna mengetuk tampilan kredit, animasi keluar dari panggung dan dihapus.


25. Tampilkan Tampilan Game

Ketika tombol putar disadap, tampilan judul animasi dari layar dan permainan terungkap. Ada sejumlah bagian yang bergerak jadi kita akan melihat lebih dekat masing-masing.


26. Pesan Petunjuk

Potongan kode berikut ini menambahkan pesan instruksi.


27. Skor TextField

Cuplikan kode berikut membuat bidang teks yang menunjukkan skor pemain saat ini di kanan atas panggung.


28. Helicopter

Selanjutnya, saatnya untuk menambahkan grafik helikopter ke panggung seperti yang ditunjukkan di bawah ini.


29.Walls (dinding)

Dalam cuplikan kode berikut, kami menggunakan API grafis Corona untuk membuat beberapa baris yang akan kami tambahkan ke simulasi fisika nanti di tutorial ini. Mereka akan digunakan untuk mendeteksi tabrakan dengan helikopter.


30.Physics (fisika)

Selanjutnya, kita perlu menambahkan fisika yang diperlukan untuk setiap objek.


31. Mulai Game

Kami membuat grup untuk blok, menjalankan fungsi gameListeners, dan memulai musik latar belakang.


32. Pendengar Game

Cuplikan kode berikut mungkin tampak rumit, tetapi hanya menambahkan beberapa pendengar untuk memulai logika permainan.


33. Buat Blok

Seperti namanya menunjukkan, fungsi createBlock menciptakan blok dan menariknya ke layar. Objek yang dihasilkan ditambahkan ke mesin fisika untuk memeriksa tabrakan.


34. Pindah Fungsi

Dalam fungsi movePlayer, kami memperbarui variabel up. Selama nilai sama dengan benar, fungsi update bergerak helikopter naik.


35. Meningkatkan Kecepatan

Untuk membuat game lebih menarik, pengatur waktu meningkatkan kecepatan setiap lima detik. Ikon ditampilkan untuk mengingatkan pemain tentang perubahan kecepatan.


36. Gerakkan Helikopter

Fungsi pembaruan memeriksa nilai naik dan menggerakkan helikopter ke atas jika sama dengan true.


37. Pindahkan Blok

Selanjutnya, saatnya untuk memindahkan blok. Kami menggunakan variabel kecepatan untuk menentukan berapa banyak piksel blok harus dipindahkan setiap frame.


38. Perbarui Skor

Algoritme untuk memperbarui skornya sederhana. Skor bertambah satu setiap frame selama helikopter belum jatuh. Sederhana. Kanan?


39. Collisions (tabrakan)

Fungsi onCollision memverifikasi jika helikopter telah bertabrakan dengan satu blok. Jika tabrakan terdeteksi, kami memainkan efek suara, ledakan, menghapus grafik, dan menunjukkan peringatan kepada pemain.


40. Alert (waspada)

Fungsi peringatan membuat tampilan peringatan dan menunjukkannya kepada pengguna. Permainan itu berakhir.


41. Aktifkan Fungsi Utama

Untuk memulai permainan, fungsi Utama harus dipanggil. Dengan sisa kode di tempat, kami melakukannya di sini.


42. Memuat Layar

Loading Screen

Pada platform iOS, file bernama Default.png ditampilkan saat aplikasi diluncurkan. Tambahkan gambar ini ke folder sumber proyek Anda, itu akan secara otomatis ditambahkan oleh kompiler Corona.


43. Ikon

Icon

Menggunakan grafik yang Anda buat sebelumnya, Anda sekarang dapat membuat ikon yang bagus. Dimensi ukuran ikon untuk iPhone non-retina adalah 57px x 57px, sedangkan versi retina harus 114px x 114px. Karya seni untuk iTunes harus berukuran 1024px x 1024px. Saya menyarankan untuk membuat karya seni iTunes terlebih dahulu dan kemudian membuat gambar berukuran lebih kecil dengan menskalakan karya seni iTunes ke dimensi yang benar. Tidak perlu membuat ikon aplikasi glossy atau menambahkan sudut bulat karena ini diurus oleh sistem operasi untuk Anda.


44. Pengujian dalam Simulator

Testing

Saatnya menguji aplikasi kami di simulator. Buka Simulator Corona, ramban ke folder proyek Anda, dan klik Buka. Jika semuanya berjalan sesuai harapan, Anda siap untuk langkah terakhir.


45. Bangun Proyek

Build

Di Simulator Corona, buka File > Build dan pilih perangkat target. Isi bidang yang wajib diisi dan klik Bangun (Build). Tunggu beberapa detik dan aplikasi Anda siap untuk diuji pada perangkat dan / atau dikirim untuk didistribusikan.


Kesimpulan

Dalam tutorial ini, kami telah belajar tentang pendengar sentuhan, deteksi tabrakan, fisika, serta beberapa keterampilan lain yang dapat berguna dalam berbagai game. Bereksperimenlah dengan hasil akhir dan cobalah memodifikasi gim untuk membuat gim versi Anda sendiri. Saya harap Anda menyukai tutorial ini dan menemukannya bermanfaat. Terima kasih telah membaca.

Advertisement
Advertisement
Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.