Category Archives: AS3

Making a shooter game with flashpunk: making waves of enemies

Part 1: Memulai dengan flashpunk dan AS3

Part 2: Membuat pesawat menembakkan peluru

Part 3: Tambahkan musuh, tambahkan ketegangan

Part 4: Saatnya bullet pattern!

Part 5

Part 6: Improving our character

Part 7: Background

Part 8: Scrolling camera

Tak terasa kita sudah sampai di seri kesembilan dari serial tutorial membuat game dengan flashpunk. Sekarang kita akan menambahkan lebih banyak musuh ke dalam stage kita yang sudah scrolling secara otomatis. Tapi sebelum itu, kita akan memperbaiki satu bug dari tutorial kita sebelumnya. Coba dari hasil tutorial sebelumnya, ketika scrolling (belum sampai ujung atas) klik-tahan mouse untuk menembak. Peluru tidak keluar dari pesawat, ketika kita mendekat bagian atas, baru terlihat peluru kita. Ini karena posisi awal dan akhir peluru yang masih belum kita ubah.

Ada yang aneh

Bug peluru tutorial sebelumnya

Untuk memperbaikinya kita tinggal mengubah posisi awal dan akhir peluru kita sesuai dengan camera offset. Dalam class character, ubahlah code buat menembakkan peluru jadi seperti ini:

				if (timeToDeltaShot > deltaShot)
				{
					shoot(FP.camera. x + Input.mouseX, FP.camera.y + Input.mouseY);
					timeToDeltaShot -= deltaShot;
				}

dan ubahlah inisiasi peluru dalam fungsi shoot() menjadi seperti ini:

var peluru:Bullet = new Bullet(AssetsList.PELURU1, FP.camera.x + x, FP.camera.y + y, xTarget, yTarget);

dengan dua perbaikan ini sebenarnya kita sudah memperbaiki bug kita, tapi masih ada satu masalah lagi: yaitu peluru akan otomatis dihapus dari world kalau keluar dari koordinat tertentu. Coba lihat fungsi update() kelas Bullet, kita akan bisa melihat baris codenya. Bagaimana penyelesaiannya? tinggal comment saja baris yang menghapus peluru dan masalah selesai.

			if (x < 0 || x > 640 || y < 0 || y > 480)
			{
				// remove peluru ketika keluar dari game window
				// this.world.remove(this);
			}

Peluru sudah menembak dengan benar

Read more …

Aryadi Perwira

Self-proclaimed AS3 blackbelt.

More Posts

Making a shooter game series, part 8: Scrolling camera

Sampai juga kita di seria kedelapan dari tutorial pembuatan game shooter. Sama seperti biasanya kita akan melanjutkan dari tutorial part terakhir, kalau kamu masih ingat pada tutorial terakhir kita membuat background yang lebih menghibur daripada sekedar warna hitam. Seperti yang (kalau tidak salah) saya janjikan di tutorial seri ketujuh, kali ini kita akan membahas mengenai camera dan bagaimana membuat scrolling background.

Camera, dalam konteks game/game development, adalah pengganti mata kita dalam melihat game. Pendeknya, apa yang masuk dalam jarak pandang cameralah yang akan ditampilkan di game window. Kita bisa saja membuat sesuatu diluar jarak pandang camera, yang nantinya (dalam gameplay) akan tampil di game window dengan cara menggerakkan camera, dengan cara inilah kita akan membuat scrolling background. Sebelum kita membuat sesuatu diluar jarak pandang camera, pertama-tama kita akan belajar bagaimana cara menggerakkan camera terlebih dulu. Tambahkan fungsi ini di bagian atas class MapOne:

	import net.flashpunk.utils.Input;
	import net.flashpunk.utils.Key;
        import net.flashpunk.FP;

setelah itu kita akan menambahkan fungsi untuk menggerakkan camera, masih di MapOne:

Read more …

Aryadi Perwira

Self-proclaimed AS3 blackbelt.

More Posts

Making a shooter game part 7: Background

Sampai juga kita di angka lucky seven dari seri tutorial pembuatan game shooter. Kali ini kita akan membahas tentang pembuatan background dari game kita. Seperti yang sudah anda semua sadari (kalau tidak berartii hebat), bahwa background game kita masih hitam. Sekarang kita akan menambahkan background untuk game kita. Ada dua cara untuk menambahkan background, yang pertama adalah dengan satu gambar background yang seukuran dengan layar / area game kita, atau dengan menggunakan tilesets yang adalah nama lain dari spritesheet untuk background (biasanya untuk top down view).

Di tutorial ini saya akan menggunakan cara kedua, yaitu menggunakan tileset. Langkah pertama adalah mencari tileset yang akan kita gunakan. Saya menemukan satu tileset yang cocok dari opengameart.org yang dibuat oleh qubodup, Bart K, dan Blarumyrran, download tileset di bawah ini

save di folder assets kita, dan kita bisa segera mulai. Buatlah child class dari Entity, berinama Tiles class seperti ini

package
{
	import net.flashpunk.Entity;
	import net.flashpunk.graphics.Tilemap;

	/**
	 * ...
	 * @author Aryadi Perwira Subagio
	 */
	public class Tiles extends Entity
	{
		public var img:Tilemap;

		public function Tiles(tileset:*)
		{
			img = new Tilemap(tileset, 640, 480, 32, 32);
			graphic = img;
		}

	}

}

Read more …

Aryadi Perwira

Self-proclaimed AS3 blackbelt.

More Posts

Stop SOPA