Hai agan-agan kabarnya pada baik ga nih ? kalau baik Alhamdulillah, kali ini, ane akan berbagi ilmu tentang membuat game sederhana
dengan menggunakan Greenfoot ini permintaan dari agan andris jadi ane bikini tutorialnya
gan. Tapi sebelum buat game nya kita kenalan dulu yuk sebenernya
apasih Greenfoot itu ?.
Greenfoot
atau kaki hijau dalam bahasa Indonesia adalah adalah perangkat lunak yang
didesain untuk pemula agar dapat terbiasa dengan Pemrograman Berorientasi Objek
(Object-Oriented Programming), yang mendukung pengembangan aplikasi bergambar
dengan memakai bahasa pemrograman Java.
Greenfoot didesain dan telah diimplentasikan di Universitas Kent, Inggris dan Universitas
Deakin, Melbourne – Australia.
Terdapat 3 versi yang tersedia: untuk Windows, untuk MacOS X, dan untuk sistem
operasi yang lain.
Prasyarat :
Diperlukan Java 5(JDK)
versi 1.5 atau yang terbaru untuk menjalankan Greenfoot. Kami merekomendasikan
untuk membaharui Java ke versi stabil (non-beta) terbaru. JDK bisa diunduh di
laman web Sun http://java.sun.com/j2se/. Untuk diperhatikan, jangan mengunduh Java versi “JRE” (Java
Runtime Environment) karena JRE sendiri tidaklah cukup, Anda membutuhkan Java
versi “JDK” (Java Development Kit).
Pada MacOS X J2SE versi terbaru telah tersedia
sewaktu menginstal sistem operasi, sehingga tidak perlu untuk menginstalnya
lagi.
Okeh yang diatas
sekedar perkenalan dengan Greenfoot. Nah, teman-teman sekarang kita masuk untuk
membuat sebuah pemrograman dasar game menggunakan Greenfoot. Ini merupakan
salah satu karya ane dengan scenario atau jalan ceritanya yaitu “ ada seekor
kepik yang sedang hinggap di dahan pohon tiba-tiba dari langit turun banyak
sekali kue pie. Karena lapar kepik memakan kue pie itu. Setiap kali makan satu
pie itu kepik akan mendapatkan 1 poin. Tapi disatu sisi ada spider/ laba-laba
yang turun juga yang ternyata laba-laba tersebut beracun. Jika tersentuh
laba-laba tersebut maka kepik akan mati atau game over. Selain itu jika pie itu
tidak berhasil dimakan oleh kepik lalu jatuh ke tanah maka akan game over “.
Itulah sedikit
penjelasan tentang game yang akan kita buat. Sangat sederhana tapi semoga
bermanfaat.. :D
1. Bukalah
aplikasi Greenfoot
maka akan muncul
tampilan seperti ini.
Kemudian akan muncul
kotak dialog, dimana teman-teman akan menyimpan diamana hasil kerja
teman-teman.


3. Buatlah sebuah sub class di class word dengan cara klik kanan
lalu pilih new subclass.
lalu akan muncul
jendela baru untuk memasukkan nama kelas. ane memberikan nama latar (perhatikan huruf
besar dan kecilnya, karena pada pemrograman java bersifat case sensitive
artinya huruf besar dan kecil sangat berpengaruh).
Akan muncul kotak
dialog :
Pilih background yang
teman-teman sukai, kalau ane sendiri ngambil dari google yang ada gambar
pohonnya kemudian jangan lupa untuk memberikan nama class. Kemudian pilih OK.
Untuk melihat hasilnya, klik compile maka akan tampil background yang dipilih
tadi.
Klik kanan pada latar kemudian
pilih open editor, maka akan tampil kode program class word dalam hal ini latar.
Ketikkan syntaks
berikut :
public latar()
{
super(900, 500, 1);
}
perintah super(900,500,1).
Perintah ini digunakan untuk membuat ukuran layar dengan panjang 900 x tinggi
500 dengan ukuran cell 1 x 1.
4.Sekarang kita akan membuat Subclass Actor
Disini untuk memasukkan gambar diatas, pilih import from file kemudian pilih gambar sesuai tema. setelah itu, klik gambar tersebut kemudian jangan lupa untuk mengisikan nama class. berikut tampilan depan :
5. Menempatkan objek dalam subclaass latar. Klik
kanan pada latar kemudian pilih open editor.
Masukkan
syntax dibawah sytaks membuat background/latar :
setPaintOrder(counter.class,
kepik.class, pie.class);
addObject(new kepik(),
200,250);
addObject(new
pie(),700,30);
addObject(new
spider(),500,30);
addObject(skor,80,400);
addObject(skor,80,400);
6. Compile dan jika tidak ada kesalahan syntax
lihat apa yang terjadi pada subclass latar.
7. Mengatur gerak
aktor dengan Mouse
Masukkan syntaks
berikut ke dalam actor kepik ;
if(Greenfoot.mouseMoved(null))
{
MouseInfo mouse = Greenfoot.getMouseInfo();
setLocation(mouse.getX(),
mouse.getY());
}
Tekan compile dan
pastikan syntax yang teman buat sudah sesuai, jika tidak terjadi kesalahan maka
akan muncul tulisan Class compiled-no syntax error.
8. Setelah itu mengatur gerak kue pie / hujan pie secara random
Masukkan syntax
berikut ke dalam actor pie ;
public void act()
{
int x = getX();
int y = getY();
setLocation(x, y + 1);
if (getY()
==499) //untuk
pie dapat turun ke bawah
{
setLocation(getX(),0);
}
}
Masukkan syntax
berikut pada latar pada public void act;
if(Greenfoot.getRandomNumber(100)
< 2) { //untuk
pie dapat random/ acak
addObject(new pie(), Greenfoot.getRandomNumber(700),
10);
}
9. Mengatur
gerak spider atau musuh kepik
Masukkan syntax
berikut ke dalam actor spider ;
public void act()
{
int x = getX();
int y = getY();
setLocation (x, y +
1);
if (getY()
==499) //untuk
spider dapat turun kebawah
{
setLocation(getX(),0);
}
}
Masukkan syntax
berikut pada latar pada public void act;
if(Greenfoot.getRandomNumber(700)
< 1)
{ //untuk
spider dapat random/acak
addObject(new
spider(), Greenfoot.getRandomNumber(500), 10);
}
10. Sekarang kita bikin point. Yaitu apabila kepik makan kue pie
maka akan medapat poin satu.
Masukkan syntax
berikut kedalam actor kepik di dalam void act ;
pie a=
(pie)getOneIntersectingObject(pie.class); //untuk pie dapat
hilang ketika dimakan
if (a!=null)
{
((latar)
getWorld()).tambahNilai();
Greenfoot.playSound("pop.wav"); //untuk
menambahkan suara
getWorld().removeObject(a);
return;
}
//untuk sound bisa
diambil dari folder Greenfoot yang berada di direktori C:\
Kemudian masukkan
syntax berikut pada latar dipaling atas setelah komentar:
counter skor = new
counter ("Skor : ");
public void
tambahNilai()
{
skor.tambah(1);
}
Masukkan syntax
dibawah ini di actor counter :
import Greenfoot.*; //letakkan
dipaling atas sebelum komentar
import java.awt.Font;
import java.awt.Color;
private int angka = 0;
private int target =
0;
private String huruf;
private int
panjangHuruf;
public counter( String
depan )
{
huruf = depan;
panjangHuruf =
(huruf.length() +2) *16;
setImage (new GreenfootImage(panjangHuruf,24));
GreenfootImage gambar
= getImage();
Font jenisHuruf =
gambar.getFont();
gambar.setFont(jenisHuruf.deriveFont(24.0F));
gantiGambar();
}
private void
gantiGambar()
{
GreenfootImage gambar
= getImage();
gambar.clear();
gambar.setColor(Color.RED);
gambar.drawString(huruf
+ angka, 1, 18);
}
public void tambah
(int skor)
{
target += skor;
}
public int
nilaiAkhir()
{
return angka;
}
public void act()
{
if (angka < target)
{
angka++;
gantiGambar();
}
}Okeh sekarang kita
buat untuk mencetak skor pada papanskor.
Masukkan syntax
berikut pada actor papanskor:
import Greenfoot.*;
import java.awt.Color;
import java.awt.Font;
import java.util.Calendar;
public class papanskor
extends Actor
{
public static final
float besarhuruf = 48.0f;
public static final
int lebar = 500;
public static int
tinggi = 300;
public papanskor(int
skor)
{
bikinGambar("Game
Over","Skor Akhir : ", skor);
}
private void
bikinGambar(String judul, String depan, int skor)
{
GreenfootImage gambar
= new GreenfootImage(lebar,tinggi);
gambar.setColor (new
Color (25, 5, 74, 160));
gambar.fillRect(0,0,
lebar-10, tinggi -10);
Font font =
gambar.getFont();
gambar.setColor(Color.GREEN);
gambar.drawString(judul,60,
100);
gambar.drawString(depan+skor,60,200);
setImage(gambar);
}
Masukkan syntax
berikut pada latar :
public void selesai()
{
addObject(new
papanskor(skor.nilaiAkhir()), 450,250);
Greenfoot.stop();
}
11. Sekarang tinggal membuat gameover, yakni ketika kepik menyentuh
spider atau kue pie jatuh ke tanah.
Masukkan syntax di
actor kepik :
spider
spider=(spider)getOneIntersectingObject(spider.class);
if(spider !=null)
{
setImage("skull.png");
setRotation(0);
Greenfoot.playSound("buzz.wav");
getWorld().removeObject(spider);
Greenfoot.stop();
((latar)
getWorld()).selesai();
}
Masukkan syntax
berikut di actor pie :
setLocation(getX(),getY()
+1); //game
akan selesai ketika pie menyentuh tanah
if (getY() == 450){
((latar)
getWorld()).selesai();
Greenfoot.playSound("buzz.wav");
}
Nah gan udah jadi dah ,emang sih agak sulit tapi kalau agan teliti dan
detail membaca dan mempraktekannya agan pasti bisa kok ane jamin dah :D oke gan
terima kasih juga udah berkunjung ke blog jelek ane ini gan dan tunggu tutorial-tutorial
yang lainnya ya gan,selamat berpraktek ria ya gan :)
Tidak ada komentar:
Posting Komentar