Construct2 Cover-16-9

Published on March 9th, 2015 | by Aditia Dwiperdana

0

Tutorial top down shooter [8]: Peluru dan nyawa

Ini adalah seri tutorial pembuatan game top down shooter bagian ke 8. Asset gambar bisa didapat di http://gedebuk.org/spaceshooter.  Ini adalah seri tutorial pembuatan game top down shooter bagian ke 8. Setelah membuat beberapa jenis tembakan, kita bisa membuat tiap peluru memiliki kekuatan yang berbeda. Lalu untuk memanfaatkan fitur tersebut, kita perlu membuat musuh lebih kuat, sehingga tidak akan mati dalam satu kali tembak.

111 - menembak musuh

Menambahkan nyawa musuh

Biasanya kita menyimpan suatu nilai menggunakan variabel global, namun karena jumlah musuh dalam permainan tidak tentu, kita tidak bisa menggunakan variabel global. Jika kita menggunakan variabel global, kita tidak bisa menghubungkan suatu nilai dengan objek musuh yang kita munculkan secara dinamis di tengah permainan. Ada satu jenis variabel lain, yaitu ‘instance variable’, variabel yang nilainya disimpan di setiap objek. Nilai yang disimpan di setiap objek bisa berbeda, tergantung apa yang terjadi dengan objek tersebut.

Berikut adalah contoh kasus yang mungkin terjadi: Ada dua musuh dengan jenis yang sama, kita sebut musuh A dan B, masing-masing memiliki nyawa awal 5. Musuh A terkena tembakan pemain sebanyak 3 kali, sedangkan musuh B lolos dari semua tembakan pemain. Di titik ini, musuh A dan B memiliki nilai nyawa yang berbeda, nyawa musuh A tinggal 2 sedangkan musuh B memiliki nyawa penuh.

Menambahkan instance variable

  1. Klik kanan objek Musuh di project tree > Instance variable > pilih tombol tambah (+) untuk membuat variabel baru > Isi nama variabel misalnya dengan ‘nyawa’, jenisnya number, dan isi nilai awal dengan 5. Nilai yang kita masukkan akan menjadi nyawa awal untuk setiap objek yang nantinya dimunculkan dalam permainan.
  2. Kita bisa menggunakan nilai ini dalam area isian dengan menulis “Musuh.nyawa”, yang sebenarnya berarti “nilai variabel bernama nyawa pada objek Musuh”. Nilai ini akan diambil dari objek yang sedang diproses dalam event, misalnya dalam event tabrakan musuh dengan peluru.

Kekuatan peluru

Karena kita menyimpan jenis peluru yang berbeda dalam objek yang sama namun dalam frame berbeda, kita bisa menggunakan nomor frame sebagai penanda kekuatan peluru. Cara ini adalah cara yang paling sederhana, tapi ada beberapa hal yang nantinya perlu kita pertimbangkan:

  • Sesuaikan kekuatan peluru dengan tampilan peluru yang bersangkutan, misalnya peluru yang lebih kuat adalah yang terlihat lebih tebal atau besar.
  • Sesuaikan kombinasi peluru dalam tembakan pemain agar kekuatannya tidak berlebihan. Contoh variasi tembakan yang kita buat sebelumnya memiliki peluru kuat yang terlalu banyak. Idealnya pemain diberi variasi tembakan kuat dengan peluru yang sedikit atau tembakan menyebar dengan peluru yang kekuatannya lebih rendah.

111 - frame peluru

Mengurangi nyawa musuh

Sekarang kita perlu memodifikasi event agar musuh tidak langsung hancur saat terkena peluru. Nyawa musuh akan berkurang sesuai dengan kekuatan peluru. Pada event tabrakan musuh dan peluru, kita perlu ubah aksinya menjadi sebagai berikut:

  1. Aksi pertama adalah menghancurkan peluru, kita bisa gunakan aksi yang sama dari tutorial sebelumnya.
  2. Aksi kedua adalah mengurangi nyawa musuh, Add action > pilih objek Musuh > Subtract from > pilih variabel nyawa yang baru kita buat, isi nilainya dengan “Peluru.AnimationFrame+1″. Kita perlu menambahkan dengan nilai 1 karena frame animasi dimulai dari indeks nol.

Event hancurnya musuh

  1. Buat subevent pada event tabrakan sebelumnya, tekan S (Add subevent) > pilih Musuh > “Compare instance variable” > pilih nyawa, pilih simbol “less than or equal” dan isi nilai dengan angka 0.
  2. Tambah atau pindahkan aksi menghancurkan musuh ke event ini. Add action > Musuh > Destroy.
  3. Jangan lupa untuk memindahkan event memunculkan power up menjadi subevent dari event di langkah sebelumnya. Lihat gambar untuk referensi hasl akhir event yang kita buat.

111 - event akhir


Ikuti channel Gedebuk di Youtube untuk mendapatkan berbagai video tutorial pembuatan game! Klik saja tombol Subsribe di bawah ini.


Lebih suka tutorial tertulis seperti artikel ini?





About the Author



Back to Top ↑