Dalam Pembahasan kali ini akan dijelaskan bagaimana cara membuat sendiri game pertualangan
sederhana dengan menggunakan aplikasi flash. Untuk membuat game tersebut sebelumnya kita harus tau apa saja yang diperlukan untuk membuat game pertualangan. Dalam logika, saat memainkan game kita menggerakkan pemain berjalan di panggung permainan. berarti, kita membutuhkan dua objek, yaitu pemain dan panggung area. detail dari kedua objek tersebut:
•> Pemain
- Dapat berjalan ke kanan
- Dapat berjalan keKekiri
- Dapat Loncat
- Jatuh terkena gravitasi
•> Panggung
- Tempat pijakan pemain
Dari hipotesa atau kesimpulan awal tadi, marilah memulai membuat game pertualangan dengan tangan
sendiri dengan membuka dokumen baru.
1. Tekan (Ctrl+N) pilih flash document, kemudian klik kanan pada lembar kerja pilih Document Properties maka akan muncul jendela dialog. kemudia isikan angka 30 pada Frame Rate, Dimension 600 x 400 dan Background color putih, Setelak itu Klik Ok.
2. Setelah itu menggambar sebuah pemain. Disini saya menggunakan Rectangle Tool(R) untuk membuat pemain. Anda bisa kreasikan sendiri pemain anda.
3. Kemudian seleksi pemain dan klik kanan pada pemain, pilih Convert to Symbol..
4. Beri nama pemain dengan nama "player" pada kolom name, pilih Movie Clip pada pilihan type, dan pilih poros di tengah pada pilihan Registration, kemudian klik OK.
5. Kemudian klik Movie clip player dan berikan nama instansi di properties>Instance Name dengan nama instansi "player".
6. Setelah itu gambar panggung area untuk tempat berjalan pemain. Disini saya juga menggunakan Rectangle Tool(R) untuk membuat panggung seperti gambar dibawah. Kemudian, seleksi semua gambar panggung area, buat menjadi Movie clip dengan klik kanan pilih Convert to Symbol.
7. Beri nama "tanah" pada kolom Name, pilih Movie Clip pada pilihan Type, dan tentukan registration, kemudian klik OK.
8. Kemudian klik Movie clip tanah dan berikan nama instansi di properties>Instance Name dengan nama instansi "tanah".
9. Setelah itu klik kanan pada layer1 frame pertama, pilih Actions.
10. Masukkan kode dibawah ini pada jendela Actions.
//Kode dibawah ini disertai dengan penjelasan\\
stop();
//deklarasi platform
t = _root.tanah;
//deklarasi player
p = _root.player;
xspeed = 0;
yspeed = 0;
max_yspeed = 10;
walk_speed = 4;
// keadaan saat loncat ya
jumping = true;
// gravitasi & kekuatan loncat
gravity = 1;
jump_power = 10;
//fungsi player dalam frame
player.onEnterFrame = function() {
//jika ditekan ke kiri
if (Key.isDown(Key.LEFT)) {
xspeed = -walk_speed;
}
//jika ditekan ke kanan
if (Key.isDown(Key.RIGHT)) {
xspeed = walk_speed;
}
//jika ditekan tombol ke atas dan tidak saat loncat
if ((Key.isDown(Key.UP)) and !jumping) {
yspeed -= jump_power;
jumping = true;
}
//--------script jatuh seakan2 terkena grafitasi-----------\\
// jika keadaan saat loncat
if (jumping) {
yspeed += gravity;
}
//jika yspeed>max_yspeed
if (yspeed>max_yspeed) {
yspeed = max_yspeed;
}
//--------akhir script seakan2 terkena gravitasi-----------------\\
//jika platform dibawah kaki dan tidak saat loncat dan tidak saat naik
if (level_under_my_feet() and !jumping) {
yspeed = 0;
}
// memerintahkan player untuk melakukan gerakan
// ->masukkan nilai-nilai x, y player ke dalam variabel forecast
forecast_x = this._x+xspeed;
forecast_y = this._y+yspeed;
// mengontrol platform
//ketika platform menyentuh bagian bawah player lakukan
while (t.hitTest(forecast_x, forecast_y+this._height/2-1, true)) {
forecast_y--;
xspeed = 0;
yspeed = 0;
jumping = false;
}
//ketika platform menyentuh bagian atas player lakukan
while (t.hitTest(forecast_x, forecast_y-this._height/2, true)) {
forecast_y++;
yspeed = 0;
}
//ketika platform menyentuh bagian kiri player lakukan
while (t.hitTest(forecast_x-this._width/2+1, forecast_y, true)) {
forecast_x++;
xspeed = 0;
}
//ketika platform menyentuh bagian kanan player lakukan
while (t.hitTest(forecast_x+this._width/2, forecast_y, true)) {
forecast_x--;
xspeed = 0;
}
//kembalikan nilai forecast ke player agar player begerak sesuai event
this._x = forecast_x;
this._y = forecast_y;
// hentikan gerakan setelah event terjadi
xspeed = 0;
//membatasi lebar gerak karakter
if (p._x-(p._width/2)<=0) {
p._x = p._width/2;
} else if (p._x+(p._width/2)>=600) {
p._x = 600-(p._width/2);
}
//jika player jatuh melebihi platform
if (p._y>=600) {
p._x = 80;
p._y = 180;
}
if (t.hitTest(player._x, player._y+player._height/2, true)) {
jumping = false;
} else {
jumping = true;
}
};
//end finction player
//fungsi platform ketika dibawah player
function level_under_my_feet() {
return t.hitTest(player._x, player._y+player._height/2, true);
}
11. Setelah itu tekan (Ctrl+Enter) untuk melihat hasil
Script di atas hanyalah salah satu dari logika-logika yang saya berikan, anda bisa menambah dan menggunakan logika-logika kreasi anda. Apabila ingin mengedit panggung area, tinggal dobel klik movie clip tanah dan edit sesuka hati.
Selamat mencoba. Semoga berhasil dan menjadi inspirasi anda serta pengalaman yang menyenangkan.
Contoh file dapat di download disini
Super ajib nih gan....
ReplyDeleteada lanjutannya ga gan ?
kalo bisa buat game jaya header tuh..
ha..ha
salam kenal MORTEN JONATHAN
newbiepc.blogspot.com
gan contoh.fla nya kok dah di delete.. saya mau download gak bisa.. butuh bantuan buat referensi saya nie..
ReplyDeleteIya gan maaf linknya mati, Ziddu banyak iklnnya ganti dropbox. Silahkan mas gan. Semoga bermanfaat. ini linknya https://www.dropbox.com/s/udt90arm8vpp4e7/SimplePlatform.rar
ReplyDeletegan minta contoh yang buat loncat" donk tapi scriptnya yg bisa di buat di hp
ReplyDeleteScript yang loncat pas ini keadaan ketika tombol UP ditekan dan keadaan menyentuh tanah (jumping==false)
Delete//jika ditekan tombol ke atas dan tidak saat loncat
if ((Key.isDown(Key.UP)) and !jumping) {
yspeed -= jump_power;
jumping = true;
}
terimakasih tutorialnya sangat bermanfaat :)
ReplyDelete