petir

Jumat, 28 Februari 2014


Melanjutkan materi kita sebelumnya yang tertunda. Untuk greenfoot dapat dijalankan dengan
baik di system operasi windows maupun linux. Materi kali saya ulang mulai dari awal namun
dengan menggunakan linux dan kali ini menggunakan PesatNux 1.2 (hasil remastering dari
Ubuntu 8.04.1, UbuntuME dan BlankOn 4.0). Perlu diingat java adalah program yang case
sensitif artinya beda perintah antara huruf Kapital dan bukan sangat berpengaruh.
Syarat Program
Untuk dapat menjalankan program greenfoot dikomputer anda harus sudah ada program Java 5
(JDK 1.5) atau diatasnya bisa dengan sun-java atau open-java (open-jdk). Kali ini penulis
menggunakan Sun Java 6. Sedangkan program greenfoot kali ini sudah mencapai versi 1.4.6
dan dapat diunduh pada http://greenfoot.org/download/
Cara Instalasi
Instal java menggunakan synaptic atau jika diconsole (jika menggunakan debian base) – syarat
komputer tersambung ke-internet atau memiliki DVD repo
$ apt-get install sun-java6-bin sun-java6-jre sun-java6-jdk
Untuk greenfoot klik kanan di nama file lalu pilih Sun Java 6 Runtime seperti gambar 1.
Lanjutkan dengan memilih tempat instalasi diletakan dan versi java yang digunakan, klik install
seperti gambar 2 tunggu hingga selesai lalu pilih done seperti gambar 2a.
Komunitas eLearning IlmuKomputer.Com
Copyright © 20032008
IlmuKomputer.Com 1
Lisensi Dokumen:
Copyright © 2003-2008 IlmuKomputer.Com
Seluruh dokumen di IlmuKomputer.Com dapat digunakan, dimodifikasi dan disebarkan secara
bebas untuk tujuan bukan komersial (nonprofit), dengan syarat tidak menghapus atau merubah
atribut penulis dan pernyataan copyright yang disertakan dalam setiap dokumen. Tidak
diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari
IlmuKomputer.Com.
Gambar 2a. Pilih Done
Proses instalasi telah selesai dan greenfoot bisa kita jalankan sesuai tempat instalasi yg dipilih
lihat gambar 3 (pada contoh diletakan pada /home/rpl/greenfoot)
Komunitas eLearning IlmuKomputer.Com
Copyright © 20032008
IlmuKomputer.Com 2
Gambar 1. Klik Kanan pada file pilih
Open with Sun Java 6 Runtime Gambar 2. Pilih folder tempat menginstall greenfoot dan
dimana JDK terinstall
Gambar 3. Folder hasil instalasi greenfoot.
Untuk memudahkan kita dalam menjalankan program greenfoot buatlah link pada menu utama
misalnya di Applications > Programming > Greenfoot langkah-langkahnya
adalah klik System > Preferences > Main Menu
Gambar 4. Klik Main Menu
Letakan di menu Programming, lanjutkan dengan mengklik New Item dan isi dengan tulisan
yang ingin ditampilkan (Greenfoot) lalu isi dimana file greenfoot berada seperti gambar 5
Gambar 5. Berinama menu dan pilih file eksekusi
Komunitas eLearning IlmuKomputer.Com
Copyright © 20032008
IlmuKomputer.Com 3
Jalankan greenfoot sesuai dengan menu yang dibuat spt gbr. 6 lanjutkan dengan memilih new
scenario 6a
Beri nama skenario baru misalnya: PrinceofCibinong
seperti gambar 7 lalu klik
tombol Create. Perhatikan dimana filenya dimana kita letakkan. Contoh kali ini diletakan
pada partisi khusus data (folder media) di /media/disk/PrinceOfCibinong
Gambar 7. Beri nama sesuai keinginan (jangan lupa letaknya difolder apa)
Komunitas eLearning IlmuKomputer.Com
Copyright © 20032008
IlmuKomputer.Com 4
Gambar 6. Menu Greenfoot Gambar 6a. Gambar menu greenfoot
jika pertama kali dijalankan
Dan akan muncul tampilan greenfoot, lanjutkan dengan membuat skenario baru. tentukan
skenarionya seperti apa untuk bahasan kali ini adalah :
Sang Pangeran (Prince) berusaha untuk menyelamatkan “ sang Putri
(Princess) yang tertawan namun mempunyai tantangan untuk bisa
melawan 5 macam musuh. Pangeran dapat digerakan dengan tombol
panah dan dapat menembak dengan tombol x dan z. Musuh1 bergerak
dari kiri kekanan dan terus berputar sambil turun, Musuh2 bergerak
dari kanan ke kiri dan terus bergerak ke atas. Musuh3 bergerak dari
atas ke bawah dan terus bergeser ke kanan. Musuh4 bergerak dari
bawah ke atas dan terus bergeser ke kiri. Musuh5 selalu menjaga sang
Putri di pojok atas.”
Lanjutkan dengan membuat setting lokasi (World) caranya klik kanan di tombol World lalu
pilih New subclass seperti gambar 7a
Gambar 7a. Buat kelas baru pada World (untuk menentukan background dan lebar layar)
Gambar 8. Beri nama kelas baru dan pilih background yang dipakai
Komunitas eLearning IlmuKomputer.Com
Copyright © 20032008
IlmuKomputer.Com 5
Buat kelas baru pada actor dengan cara klik kanan lalu pilih New subclass seperti gambar 9
Gambar 9. Buat kelas baru pada Actor
Gambar 10. Buat 9 object seperti gambar
Peluru2 dibuat dengan cara klik kanan pada actor Peluru 1
Komunitas eLearning IlmuKomputer.Com
Copyright © 20032008
IlmuKomputer.Com 6
Jika kita lihat pada file manager, folder dan file yang terbentuk disana terlihat scenario yang
kita buat berbentuk folder dan didalamnya ada 3 folder yang otomatis terbentuk, yaitu :
greenfoot, images dan sound. Fungsi folder images adalah untuk menyimpan gambar yang
akan kita gunakan, sedangkan folder sound untuk menyimpan file suara yang kita pakai untuk
game buatan kita. Folder images dan sound awalnya masih kosong. Awal file yang terbentuk
adalah file yang berkhiran .java seperti gambar 11
Gambar 11. Folder dan file yang terbentuk pada
Pembuatan game greenfoot
Ok, kita mulai untuk membuat codingnya, caranya klik kanan di Adventure lalu pilih Open
editor seperti gambar 12 dan akan muncul layar coding seperti gambar 13.
Gambar12. Buka pengedit Gambar 13. Layar kode
kode pada Class World
Komunitas eLearning IlmuKomputer.Com
Copyright © 20032008
IlmuKomputer.Com 7
Biasakan untuk mengisi data pembuat contoh @author (Muhidin S) version (1.0.0). Tanda /**
adalah tanda dimulainya baris komentar, baris dibawahnya jika langsung dienter akan otomatis
muncul tanda bintang (*) didepannya dan diakhhir baris komentar ditutup dengan tanda */.
Selain cara diatas untuk membuat baris komentar bisa dengan tanda // (garis miring 2 kali)
maka baris tersebut dianggap sebagai baris komentar dengan warna tulisan redup.
Lanjutkan dengan langsung mengklik Compile (dilingkari warna kuning) lalu check perubahan
file apa yg bertambah pada file manager. Button Compile diklik maka greenfoot akan membuat
file .java menjadi .class dengan menambahkannya seperti gambar 14
Gambar 14. Penambahan file Adventure.class setelah Compile diklik.
Kembali ke gambar 13, buka editor untuk Adventure dan edit coding super(20,10,10);
menjadi super(495, 290, 2); angka 495 adalah lebar layar pada sumbu x (kanan-kiri)
290 tinggi (atas-bawah) dan 2 adalah lebar cell. Bisa diibaratkan ruangan ukuran 5mx3m
dengan lebar keramik ukuran 20cmx20cm (ini cell). Makin kecil ukuran cell makin halus
pergerakan Actor dan makin besar angka untuk lebar dan tingginya (sumbu X dan sumbu Y). Isi
cell dengan 2 dan sesuaikan angka untuk lebar (X) dan tinggi (Y) dengan ukuran resolusi
Komunitas eLearning IlmuKomputer.Com
Copyright © 20032008
IlmuKomputer.Com 8
monitor ditempat anda (coba dan sesuaikan) hingga seperti gambar 15, tidak membentuk scroll
keatas-bawah maupun kiri-kanan. Penulis menggunakan resolusi 1280x800.
Gambar 15. Gambar penuh sehingga nyaman untuk mencoba dan mengedit
Lanjutkan dengan membuat coding untuk Musuh1 yang akan bergerak dari kiri kekanan.
Perintah untuk menyatakan perpindahan lokasi adalah setLocation(getX(),getY());
getX() = sumbu X (kiri-kanan) getY() = sumbu Y (atas-bawah). Lihat gambar 16 analogi
sumbu X dan sumbu Y.
0
Gambar 16. Analogi sumbu X dan sumbu Y pada program greenfoot
Greenfoot memandang titik awal (0,0) berada pada kiri atas gambar makin kekanan maka nilai
sumbu X makin bertambah, semakin kebawah nilai sumbu Y makin bertambah dan sebaliknya.
Dengan kata lain sumbu X ditambah akan bergerak kekanan dikurangi bergerak kekiri. Sumbu
Y ditambah bergerak kebawah dikurangi bergerak keatas. Maka coding untuk menggerakan
Musuh1 adalah :
Komunitas eLearning IlmuKomputer.Com
Copyright © 20032008
IlmuKomputer.Com 9
Y
Y
X + X
+
495
290
setLocation(getX()+1,getY());
coding lengkapnya adalah
Gambar 17. Coding Musuh1 no syntax errors
Klik button Compile jika coding telah benar maka akan muncul tanda dikiri bawah seperti
gambar 17 Class compiled no syntax errors (file class telah terbentuk – dan tak ada perintah
yang salah). Lanjutkan dengan proses testing. Kembali ke layar utama greenfoot lalu klik kanan
pada class Actor Musuh1 dan pilih new Musuh1() kemudian pindahkan objeck Musuh1
ketengah-tengah. Lanjutkan dengan menekan tombol Run seperti gambar 18.
Komunitas eLearning IlmuKomputer.Com
Copyright © 20032008
IlmuKomputer.Com 10
Gambar 18. Testing coding Musuh1
Act = Action menjalankan program sesuai coding act (step by step)
Run = Memulai menjalan program hingga ada instruksi selesai atau Reset ditekan
Reset = Menghentikan program
Lanjutkan membuat coding untuk Musuh2 yang bergerak dari kiri kekanan hanya sumbu X
yang dirubah sumbu Y tetap setLocation(getX()-1,getY()). Musuh3 bergerak dari
atas kebawah sumbuX tetap sumbu Y ditambah setLocation(getX(),getY()+1);.
Musuh4 bergerak dari bawah keatas setLocation(getX(),getY()-1);. Lanjutkan
dengan testing sudahkah berjalan seperti harapan ?
Gambar 19 Testing gerakan Musuh
Apabila diklik kanan new Musuh1() tidak ada kemungkinannya file belum dicompile ada tanda
arsiran pada class yang belum dicompile spt gbr 19 no. 1 lakukan Compile All spt gbr 19 no.2.
Lakukan testing dengan cara meletakan file Musuh1-4 ditengah-tengah seperti gbr 19 no.3 dan
perhatikan gerakannya, jika Musuh1 telah mencapai angka maksimal, ia berhenti. Bagaimana
caranya agar Musuh1 bisa menembus (jika mencapai angka maksimal kembali ke angka
minimal). Coding yang perlu ditambahkan adalah :
setLocation(getX()+1,getY());
if(getX()==494)
{
setLocation(0,getY());
}
Keterangan:
if(getX()==494) apabila sumbu X mencapai angka → maksimal (495-1) maka
setLocation(0,getY()); → kembalikan nilai pada sumbu X ke angka terkecil (0)
Komunitas eLearning IlmuKomputer.Com
Copyright © 20032008
IlmuKomputer.Com 11
Untuk Musuh2 caranya sama hanya pada jika mencapai angka terkecil kembalikan ke angka
terbesar, menjadi:
setLocation(getX()1,
getY());
if(getX()==0)
{
setLocation(495,getY());
}
Untuk Musuh3 dan Musuh4 silahkan kerjakan dan lanjutkan dengan testing sudah benar semua
atau belum ?, jika belum perbaiki hingga benar dan mengerti baru lanjutkan. Jangan dilanjutkan
jika belum paham.
Lanjutkan dengan membuat gerakan pada Prince (sang pangeran), dengan aturan jika ditekan
tombol panah kanan akan bergerak kekanan panah kiri bergerak kekiri panah atas bergerak
keatas dan panah bawah bergerak kebawah. Kerjakan satu persatu lalu test.
Jika menekan tombol Panah Kanan Actor Prince bergerak kekanan, codingnya
if(Greenfoot.isKeyDown("right"))
{
setLocation(getX()+1,getY());
}
Keterangan:
if(Greenfoot.isKeyDown("right")) jika tombol panah → “ kanan” ditekan maka ...
setLocation(getX()+1,getY()); → gerakan Actor kearah kanan 1 cell
buatkan untuk penekanan tombol kiri (left), atas (up) dan bawah (down) lalu testing hasilnya.
Jika dibutuhkan Actor Prince bisa juga dibuat tembus.
Ketika tombol Reset ditekan Actor selalu hilang, buat agar Reset ditekan actor langsung
kembali ketempatnya masing-masing. File yang perlu diedit berada pada World Class yaitu file
Adventure. Letakan coding dibawah perintah super, coding yang diperlukan :
addObject(new Prince,7,145);
Keterangan:
addObject(new → tambahkan object baru (perintah dasar untuk menambahkan objek baru
Prince → Actor Prince (ganti Prince dengan nama actor yang lain jika diperlukan)
7,145 → terletak pada sumbuX koordinat 7 (dari kiri maju 7 langkah) dan sumbu Y
koordinat 145 (tengah)
Tambahkan seluruh Actor yang diperlukan, atur tata letak agar permainan lebih menarik. Untuk
membuat agar Actor berada tepat ditempat yang kita inginkan seret Actor dengan dengan
mengklik dan seret ketempat yang sesuai, lanjutkan dengan mengklik kanan pada aktor dan
pilih inspect, maka akan muncul letak dari aktor tersebut berapa x dan y – nya terlihat jelas,
buka Adventure dan tambahkan addObject untuk Actor yang dibutuhkan. Lihat gambar 20
(memunculkan pilihan inspect) dan 21 (hasil inspect).
Lalu tambahkan semua Actor ke World, agar jalannya Actor sesuai gambar edit gambarnya
(Musuh2 gerakan kekiri berarti gambarnya mesti ke arah kiri) dengan gimp atau program
pengolah gambar lainnya dan sesuaikan ukuran, arah atau warna gambarnya (difolder images).
Komunitas eLearning IlmuKomputer.Com
Copyright © 20032008
IlmuKomputer.Com 12
Gambar 20 klik kanan Inspect Gambar 21 hasil perintah Inspect
Edit gambar dan tambahkan coding di World hingga seperti gambar 22
Gambar 22 hasil akhir gambar untuk Actor
Hasil file Adventure:
public Adventure()
{
super(495, 290, 2);
addObject(new Prince(),7,145);
addObject(new Musuh1(),138,227);
addObject(new Musuh2(),414,80);
addObject(new Musuh3(),137,80);
addObject(new Musuh4(),407,227);
addObject(new Musuh5(),353,281);
addObject(new Princess(),467,270);
}
Komunitas eLearning IlmuKomputer.Com
Copyright © 20032008
IlmuKomputer.Com 13
Lanjutkan dengan coding untuk Musuh5 dengan aturan selalu selalu bergerak serong keatas
dengan tujuan menghalangi Prince untuk menemui Princess.
Buka coding Actor Musuh5
setLocation(getX()+2,getY()1);
buat jika mencapai angka maksimal dari sumbu X akan kembali ke posisi semula
if(getX()==494)
{
setLocation(353,281);
}
Testing dan lihat hasilnya.
Jika berhasil lanjutkan dengan membuat coding di Prince dengan aturan jika ditekan panah
Kanan dia akan bergerak kekanan, panah kiri bergerak ke kiri Atas gerak ke atas dan Panah
bawah bergerak kebawah. Buka coding Prince lalu buat, dibawah Act().
// Menggerakan sang pangeran dengan cara menekan tombol
// panah kanan maka Prince bergerak kearah kanan
if(Greenfoot.isKeyDown("right"))
{
setLocation(getX()+1,getY());
}
//Tekan Panah Kiri bergerak ke kiri
if(Greenfoot.isKeyDown("left"))
{
setLocation(getX()1,
getY());
}
//Tekan Panah bawah bergerak ke bawah
if(Greenfoot.isKeyDown("down"))
{
setLocation(getX(),getY()+1);
}
//Tekan Panah atas bergerak ke atas
if(Greenfoot.isKeyDown("up"))
{
setLocation(getX(),getY()1);
}
Testing dan lihat hasilnya, jika berhasil lanjutkan, jika belum cari apa permasalahannya
selesaikan JANGAN LANJUTKAN, jika belum selesai.
Masih di Prince: Jika Prince nabrak Musuh maka gambar Prince berubah jadi tengkorak, ada
suara sirene dan permainan berhenti. Siapkan suara kalah.wav masukan di folder sounds dan
gambar tengkorak dg nama tengkorak.png masukan ke folder images seperti gambar lalu buat
coding dan letakan dibawah perintah menggerakan tombol tapi masih dalam class void Act.
Musuh1 a=(Musuh1)getOneIntersectingObject(Musuh1.class);
Musuh1 = nama Actor
a = nama variabel boleh apa saja hanya untuk mengingat Musuh1 variabel a Musuh2 variabel b.
getOneIntersectingObject = object bersinggungan dengan .... karena ini ada dikelas Prince
maka dapat diartikan jika Object/Actor Prince bertemu Musuh1
Komunitas eLearning IlmuKomputer.Com
Copyright © 20032008
IlmuKomputer.Com 14
Gambar 23 tambahkan file tengkorak.png pada folder images
if(a!=null)
{
setImage("tengkorak.png");
Greenfoot.playSound("kalah.wav");
getWorld().removeObject(a);
Greenfoot.stopSimulation();
return;
}
setImage("tengkorak.png"); = ganti gambar class ini (Prince) menjadi gambar tengkorak.png)
syarat gbr harus sdh ada.
Greenfoot.playSound("kalah.wav"); = Greenfoot akan memainkan suara kalah.wav (file harus
sudah ada di folder sounds, terkadag memunculkan error jika suara sedang diapakai
misalnya sedang mendengarkan lagu.
getWorld().removeObject(a); = hilangkan object yang ada pada variabel a (Musuh1)
Greenfoot.stopSimulation(); = Hentikan Permainan
Testing dengan menabrakan Actor Prince ke Musuh1 dan lihat hasilnya, jika berhasil lanjutkan
untuk Musuh2 sampai Musuh5 dengan cara yang sama, jangan lupa testing satu-satu.
Peluru
Setelah semua selesai lanjutkan dengan membuat Senjata/Peluru untuk Prince, caranya buka
coding pada Actor yang akan mengeluarkan Peluru dalam hal ini Prince.
Komunitas eLearning IlmuKomputer.Com
Copyright © 20032008
IlmuKomputer.Com 15
Tambahkan coding diatas public void act()
private Adventure pelor;
public void addedToWorld(World dunia)
{
pelor = (Adventure) dunia;
}
private = variabel ini hanya dikenali di class yang bersangkutan (Prince)
Adventure = nama class World
pelor = nama variabel (terserah tapi tidak boleh sama dengan nama Actor
public void addedToWorld(World dunia) = Tambahkan class pelor ke World
dunia = nama variabel baru
Lalu buat di dalam act (boleh paling atas atau paling bawah, yang akan memicu keluarnya
peluru, yaitu jika ditekan tombol x (jangan lupa cari suara dengan nama fire.wav)
if(Greenfoot.isKeyDown("x"))
{
pelor.addObject(new Peluru1(), getX(),getY());
Greenfoot.playSound("fire.wav");
}
if(Greenfoot.isKeyDown("x")) = jika ditekan tombol x
pelor.addObject(new Peluru1(), getX(),getY()); = akan keluar Object baru yaitu Peluru1
letakan sama dengan Actor/Object aktif (Prince) berada.
Greenfoot.playSound("fire.wav"); = munculkan suara fire.wav (file harus ada difolder sounds)
Setelah peluru bisa keluar atur agar pelurunya langsung bergerak, misal dari kanan ke kiri, buat
codingnya di Actor Peluru1
setLocation(getX()+1,getY());
Ternyata ada sedikit masalah yaitu peluru akan meninggalkan sisa dibelakang akhir background
untuk mengatasinya gunakan coding berikut:
if(getX()==494)
{
getWorld().removeObject(this);
return;
}
getWorld().removeObject(this); = hilangkan object ini
return; = kembali keawal (perintah sangat penting dipakai jika perintah diatasnya
menghilangkan object, jangan sampai ada perintah lain yang menggunakan Object yang
telah dihilangkan, jika itu yang terjadi akan muncul pesan error).
Peluru yang baru saja dibuat belum berfungsi apa-apa karena jika Musuh tertembak tidak mati/
hilang buat jika peluru terkena Musuh1-5 maka Musuh hilang dan peluru hilang dengan bunyi
ah, buat coding di Peluru1 atau Musuh1 contoh disini dibuat di Peluru1, masukan file die1.wav
Musuh2 b=(Musuh2)getOneIntersectingObject(Musuh2.class);
if(b!=null)
{
Greenfoot.playSound("die1.wav");
getWorld().removeObject(b);
getWorld().removeObject(this);
return;
}
Komunitas eLearning IlmuKomputer.Com
Copyright © 20032008
IlmuKomputer.Com 16
testing dan jalankan (untuk tes awal jangan coba dengan Musuh1 karena Musuh1 bergerak ke
kanan jadi peluru gak bisa mengejarnnya kecuali kecepatan peluru dirubah misalnya jadi +2),
jika berhasil kerjakan untuk semua Musuh (1-5) lalu test hasilnya.
Setelah semua bisa, bagaimana jika sang Princess tertembak ?, buat sang Princess mati dan
permainan berakhir. Buat coding di Princess dan isi dengan:
Peluru1 f=(Peluru1)getOneIntersectingObject(Peluru1.class);
if(f!=null)
{
Greenfoot.playSound("die1.wav");
setImage("kalah.png");
getWorld().removeObject(f);
Greenfoot.stopSimulation();
}
bagaimana untuk mengalahkan Musuh1 ? Buat Peluru2 jika menekan tombol z buat coding
tambahan di Prince, letakan dibawah perintah penekanan tombol x
else if(Greenfoot.isKeyDown("z"))
{
pelor.addObject(new Peluru2(), getX(),getY());
Greenfoot.playSound("fire.wav");
}
Buat coding pada Peluru2 salin dari file Peluru1 dan jangan lupa ganti arah geraknya jadi kekiri
..............
// Peluru2 bergerak dari kiri ke kanan
setLocation(getX()1,
getY());
if(getX()==0)
{
getWorld().removeObject(this);
return;
}
//jika Musuh1 terkena Peluru2
Musuh1 a=(Musuh1)getOneIntersectingObject(Musuh1.class);
if(a!=null)
{
Greenfoot.playSound("die1.wav");
getWorld().removeObject(a);
getWorld().removeObject(this);
return;
}
...............
Membuat Skor
Agar permainan lebih menarik buat skor, dengan ketentuan setiap membunuh 1 musuh maka
nilai akan bertambah 20 dengan pengurangan pada peluru 1 peluru -1 nilai
Langkah-langkahnya:
1. Buat Actor Nilai dengan gambar angka 0 (ambil dari folder contoh di baloons tepatnya
di ..... greenfoot/scenarios/balloons/images/Counter.png)
2. Masuk ke jendela coding pada Actor Nilai dan buat coding diatas Public void act
Komunitas eLearning IlmuKomputer.Com
Copyright © 20032008
IlmuKomputer.Com 17
private int angka = 0;
private int target = 0;
private String huruf;
private int panjangHuruf;
public Nilai(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);
}
private int angka = 0; ==> variabel angka
Font jenisHuruf = gambar.getFont(); ==> ambil jenis huruf karena perintah ini
diatasnya harus ada import java.awt.Font
gambar.setFont(jenisHuruf.deriveFont(24.0F)); ==> gunakan huruf terbesar yaitu 24
dengan jenis font derive. 0F dibaca nol ef
gantiGambar(); ==> jalankan class gantiGambar
private void gantiGambar() ==> membuat class gantiGambar
gambar.clear(); = kosongkan gambar (angka 0 diawal)
gambar.setColor(Color.RED); ==> pakai tulisan warna Merah. Pilihan lainnya BLACK,
WHITE, RED, GREEN (penulisan harus huruf besar semua). Karena
perintah ini memanggil perintah java diatasnya harus dibuat import
java.awt.Color
gambar.fillRect(20, 4, 24, 16); ==> background tulisan disini tidak dipakai
gambar.drawString(huruf + angka, 1, 18); ==> tata letaknya tulisan dulu baru angkanya
3. Tambahkan dibaris ke-dua dari atas dibawah import greenfoot.*;
import java.awt.Font;
import java.awt.Color;
4. Buka classWorld(Adventure) lalu buat variabel diatas Public Adventure ()
Nilai skor = new Nilai("Skor: ");
5. Tambahkan object dibawah perintah menambahkan object yang lain
addObject(skor,35,280);
6. Lihat hasilnya sudah munculkah tulisan Skornya ? jika sudah lanjut agar skor bertambah
jika musuh mati
Komunitas eLearning IlmuKomputer.Com
Copyright © 20032008
IlmuKomputer.Com 18
buka kembali layar coding Nilai dan tambahkan coding yang setingkat dengan public/private
void.
public void tambah(int skor)
{
target += skor;
}
nilai target bertambah dan masukan ke skor. Tambahkan pada class → public void act
if(angka < target)
{
angka++;
gantiGambar();
}
jika angka kurang dari target maka skor selalu bertambah. →
Setelah selesai dengan file Nilai, kita beralih ke file classWorld Adventure, buka dan
tambahkan coding setingkat public void
public void tambahNilai()
{
skor.tambah(20);
}
→ buat variabel public (dapat dibuka pada file lain) dengan penambahan nilai 20. beda Musuh
dibuat beda nilaipun bisa caranya buat beberapa Public void spt ini dan nilainya.
Lanjutkan untuk menampilkan perubahan nilai ketika peluru mengenai musuh. Buka coding
Peluru1 testing pada Musuh2 tambahkan coding dibawah if.....=Null
((Adventure) getWorld()).tambahNilai();
jika Peluru1 mengenai Musuh2 tambahkan nilai →
coding lengkapnya:
Musuh2 b=(Musuh2)getOneIntersectingObject(Musuh2.class);
if(b!=null)
{
((Adventure) getWorld()).tambahNilai();
Greenfoot.playSound("die1.wav");
getWorld().removeObject(b);
getWorld().removeObject(this);
return;
}
Lakukan hal yang sama untuk Musuh1-Musuh5 lanjutkan pada Peluru2 dengan Musuh1-5.
Testing dan lihat hasilnya.
Lanjutkan untuk pengurangan nilai, jika peluru dikeluarkan kurangi nilai 1, caranya buka file
Nilai tambahkan coding dibawah public void tambah.
public void kurang(int skor)
{
target =
skor;
}
pada public void act tambahkan coding berikut setelah perintah if selesai
else if(angka > target)
{
angka;
gantiGambar();
}
Komunitas eLearning IlmuKomputer.Com
Copyright © 20032008
IlmuKomputer.Com 19
lanjutkan dengan menambahkan coding pada World Adventure, tambahkan dibawah coding
public void tambahNilai()
public void kurangiNilai()
{
skor.kurang(1);
}
Lakukan pemicunya pada actor Prince (pemicu yang mengeluarkan Peluru) syaratnya peluru
ditekan nilai langsung berkurang 1, buat coding di bawah playSound
((Adventure) getWorld()).kurangiNilai();
panggil aksi kurangiNilai yg berada di World Adventure. →
Lakukan hal yang sama pada penekanan tombol z, coding lengkapnya:
if(Greenfoot.isKeyDown("x"))
{
pelor.addObject(new Peluru1(), getX(),getY());
Greenfoot.playSound("fire.wav");
((Adventure) getWorld()).kurangiNilai();
}
else if(Greenfoot.isKeyDown("z"))
{
pelor.addObject(new Peluru2(), getX(),getY());
Greenfoot.playSound("fire.wav");
((Adventure) getWorld()).kurangiNilai();
}
Pemunculan Papan Skor
Satu urusan lagi, papan skor dengan rancangan jika Prince bertemu Princess papan skor akan
muncul dengan ucapan SELAMAT dengan nilai ...... dan permainan berakhir.
Tambahkan Actor PapanSkor lalu buat codingnya, coding lengkapnya:
import greenfoot.*;
import java.awt.Color;
import java.awt.Font;
import java.util.Calendar;
/**
* @author (Muhidin S)
* @version (1.0.0)
*/
public class PapanSkor extends Actor
{
public static final float besarHuruf = 48.0f;
public static final int lebar = 500;
public static final int tinggi = 300;
//Tulisan yang muncul dilayar
public PapanSkor(int skor)
{
bikinGambar("SELAMAT", "Skor Akhir: ", skor);
}
// Membuat gambar papan 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, tinggi);
Komunitas eLearning IlmuKomputer.Com
Copyright © 20032008
IlmuKomputer.Com 20
gambar.setColor(new Color(255, 255, 255, 50));
gambar.fillRect(5, 5, lebar10,
tinggi10);
Font font = gambar.getFont();
font = font.deriveFont(besarHuruf);
gambar.setFont(font);
gambar.setColor(Color.GREEN);
gambar.drawString(judul, 60, 100);
gambar.drawString(depan + skor, 60, 200);
setImage(gambar);
}
}
Di Actor Nilai tambahkan coding yang setingkat dengan public void act()
public int nilaiAkhir()
{
return angka;
}
Di World Adventure buat coding setingkat public void seperti ini:
public void selesai()
{
addObject(new PapanSkor(skor.nilaiAkhir()*5), 247,145);
}
Nilai akhir didapat dari jumlah skor dikalikan 5 dan letakan → di tengah-tengah
Buat pemicunya di Actor Prince atau Princess (pilih salah satu), disini pakai Princess
//Jika Princess terselamatkan oleh Prince
Prince h=(Prince)getOneIntersectingObject(Prince.class);
if(h!=null)
{
((Adventure) getWorld()).selesai();
Greenfoot.playSound("login.wav");
Greenfoot.stopSimulation();
}
Final
Langkah terakhir adalah jadikan game kita dapat dijalankan di komputer yang tidak ada
Greenfootnya (Java tetap wajib ada)
Pada game klik menu Scenario > Export atau tekan tombol CtrlE
seperti gb 24 maka
akan muncul menu seperti gambar 25
Gambar 24 pilih menu Export
Komunitas eLearning IlmuKomputer.Com
Copyright © 20032008
IlmuKomputer.Com 21
Gambar 25 Menu pilihan Export (Application)
ada tiga pilihan:
Application : Jadikan sebagai file Applikasi (menjadi file .jar) gambar.25
Webpage : Jadikan sebagai file .html (buat 1 folder didalamnya langsung terbentuk 2 file, html
dan jar). Gambar 26
Publish : Mempublikasikan hasil game buatan kita ke situs http://greenfootgallery.org
gambar.27
gambar 26 Export ke web
Komunitas eLearning IlmuKomputer.Com
Copyright © 20032008
IlmuKomputer.Com 22
gambar 27 Export source code ke www.greenfootgallery.org
Penutup
Ternyata untuk membuat game berbasis Java menggunakan Greenfoot bukanlah hal yang sulit.
Ada kemauan pasti ada jalan.
Referensi
http://www.greenfoot.org/doc/tutorial/tutorial.html (Greenfoot Tutorial), Michael Kölling
(University of Kent)
Bahan Praktikum Sistem Basis Data-DBMS MySQL
Bagian Ke 2
SUB BAHASA SQL
Dalam SQL, terdapat tiga sub bahasa, yaitu Data Definition Language (DDL) yang digunakan untuk membangun objek-objek dalam database seperti tabekl dan indeks, Data Manipulation Language (DML) yang digunakan untuk menambah, mencari, mengubah dan menghapus baris dalam tabel, dan Data Control Language (DCL) yang digunakan untuk menangani masalah sekuriti dalam database. Ketiga komponen ini dapat kita akses setelah database dipanggil (diaktifkan).
Pada contoh di atas database yang bernama Coba diaktifkan, apabila database tersebut belum ada (belum dibuat) maka terlebih dahulu database tersebut harus dibuat, adapun perintahnya adalah sebagai berikut :
C:\>cd apache\mysql\bin
C:\apache\mysql\bin>mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1 to server version: 3.23.47-max-debug
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql> show databases;
+----------+
| Database |
+----------+
| mysql |
| test |
+----------+
2 rows in set (0.05 sec)
mysql> create database Coba;
Query OK, 1 row affected (0.00 sec)
mysql> show databases;
+----------+
| Database |
+----------+
| Coba |
| mysql |
| test |
+----------+
3 rows in set (0.00 sec)
mysql> use Coba;
Database changed
mysql>
Oleh : Badrudin Hadibrata II - 3
Bahan Praktikum Sistem Basis Data-DBMS MySQL
Data Definition Language (DDL)
Terdiri dari : create, alter, dan drop
DDL bertugas membuat objek SQL dan menyimpan definisinya dalam tabel. Contoh objek yang dimaksud diatas adalah tabel, view, dan index. Pembuatan tabel, perubahan struktur tabel, perubahan nama tabel, serta perintah untuk menghapus tabel, dilakukan dengan sub bahasa yang tergolong dalam DDL.
1. Membuat Tabel
Sintaksnya: create table nama_tabel (nama_field1 type, nama_field 2 type,.....)
Contoh:
2. Melihat Struktur Tabel
Sintaksnya: - show columns from nama_tabel; atau
- describe nama_tabel;
contoh:
3. Mengubah Struktur Tabel
a. Perubahan nama field/kolom
Perubahan yang terjadi hanya terbatas pada nama field/kolom saja.
Sintaksnya:
Alter table nama_tabel change nama_field_lama nama_field_baru tipe_data;
Contoh :
b. Perubahan tipe data
Perubahan yang terjadi hanya terbatas pada tipe data yang digunakan oleh field/kolom tertentu.
Sintaksnya:
Oleh : Badrudin Hadibrata II - 4
Bahan Praktikum Sistem Basis Data-DBMS MySQL
Alter table nama_tabel modify nama_field tipe_data_baru;
Contoh :
c. Penambahan field
Struktur tabel akan berubah dengan bertambahnya field/kolom baru didalamnya.
Sintaksnya:
Alter table nama_tabel add nama_field tipe_data_baru;
Contoh :
d. Penghapusan field
Struktur tabel mengalami perubahan akibat berkurangnya field/kolom tertentu.
Sintaksnya:
Alter table nama_tabel drop column nama_field;
Contohnya:
4. Mengganti Nama Tabel
Sintaksnya :
Alter table nama_tabel_lama rename nama_tabel_baru;
Contoh:
Oleh : Badrudin Hadibrata II - 5
Bahan Praktikum Sistem Basis Data-DBMS MySQL
5. Menghapus Tabel
Sintaksnya:
Drop table nama_tabel;
Data Manipulation Language (DML)
Terdiri atas : select, update, insert, dan delete
DML digunakan untuk menampilkan, mengubah, menambah, dan menghapus baris dalam tabel.
1. Memasukan Data (Insert)
Ada 3 bentuk sintaks yang dapat digunakan untuk memasukan data ke dalam tabel, yaitu :
• Bentuk ke-1
Insert into nama_tabel (nama_field_1, nama_field_2, ..., nama_field_n)
Values (isi_field_1, isi_field_2, ..., isi_field_n);
Contoh:
• Bentuk ke-2
Insert into nama_tabel Values (isi_field_1, isi_field_2, ..., isi_field_n);
Contoh :
• Bentuk ke-3
Insert into nama_tabel set nama_field_1=isi_field_1, nama_field_2=isi_field_2, .... nama_field_n=isi_field_n;
Contoh:
2. Menampilkan Data (Select)
Perintah untuk menampilkan data akan banyak kita gunakan untuk menampilkan informasi berdasarkan kriteria dan urutan tertentu. Berikut ini sintaks untuk menampilkan data:
Select [field1, field2,... ] from [nama_tabel]
Where [kondisi]
Order by [nama_field]
Group by [nama_field] asc/desc;
Oleh : Badrudin Hadibrata II - 6
Bahan Praktikum Sistem Basis Data-DBMS MySQL
Contoh :
• Untuk menampilkan data pegawai yang berjenis kelamin perempuan
• Untuk menampilkan nama pegawai yang diawali huruf C.
Awal sebuah teks berada pada satu huruf disebelah kiri (left), maka dapat ditulis dengan :
Select * from pegawai where left(nama,1)=’c’;
Atau sama artinya dengan penulisan sembarang huruf depannya adalah huruf c. Penulisan sembarang huruf dapat diwakili dengan tanda persen (%).
Select * from pegawai where nama like ’c%’;
• Untuk menampilkan nama pegawai yang huruf keduanya adalah N.
Untuk menentukan huruf yang berada ditengah-tengah teks, dapat menggunakan substring :
Select * from pegawai where substring(nama,2,1)=’n’;
Atau sama artinya dengan penggunaan fungsi mid di bawah ini :
Select * from pegawai where mid(nama,2,1)=’n’;
Atau sama artinya dengan penulisan sembarang huruf dibagian akhir tetapi dengan dua huruf di depannya adalah satu karakter sembarang dan huruf n. Penulisan garis bawah ( _ ) untuk menggantikan setiap karakter sembarang. Sedangkan tanda % untuk menggantikan semua karakter sembarang yang tersisa.
Select * from pegawai where nama like ’_n%’;
Oleh : Badrudin Hadibrata II - 7

cara membuat game berbasis Java menggunakan Greenfoot bag. 1

Seluruh dokumen di IlmuKomputer.Com dapat digunakan, dimodifikasi dan disebarkan secara bebas untuk tujuan bukan komersial (nonprofit), dengan syarat tidak menghapus atau merubah atribut penulis dan pernyataan copyright yang disertakan dalam setiap dokumen. Tidak diperbolehkan melakukan penulisan ulang, kecuali mendapatkan ijin terlebih dahulu dari IlmuKomputer.Com.
Pendahuluan
Game berbasis Java sekarang ini sudah banyak sekali beredar di masyarakat luas, baik game yang ada di Handphone maupun menggunakan komputer/laptop. Artikel ini diterbitkan karena penulis merasa begitu kurangnya informasi tentang greenfoot ketika kami ingin mengikuti lomba Grand Java Night Festival 2007 di Kampus Gunadarma Depok (www.gunadarma.ac.id/javanight/)
Syarat Program
Untuk dapat menjalankan program greenfoot dikomputer anda harus sudah ada program Java 5 (JDK 1.5) atau diatasnya disini penulis menggunakan Java 6 (jdk-6u2-windows-i586-p.exe) untuk program java dapat didownload di http://java.sun.com/javase/downloads/index.jsp. Sedangkan greenfoot dapat didownload di http://www.greenfoot.org/download/.
Cara Instalasi
Tahap awal install-lah Java 6 dengan cara double klik pada file hasil download dan seperti kebanyakan program di windows lainnya cara instalasinyapun sangat mudah, ikuti instruksi dilayar hingga muncul finish.
Gambar 1. Double klik file java dan ikuti instruksi layar hingga selesai
Lanjutkan dengan menginstall greenfoot hingga selesai
Gambar 2. Install file Greenfoot hingga finish
Komunitas eLearning IlmuKomputer.Com
Copyright © 2003-2007 IlmuKomputer.Com 1
Tampilan awal Greenfoot
Gambar 3. Tampilan awal greenfoot
Langkah awal untuk membuat game di greenfoot tentukan skenarionya seperti apa untuk bahasan kali ini nya adalah :
“Objek jagoan akan mengambil diamond yang dijaga ketat oleh ular-ular dan beruang yang bunuh dengan peluru yang berbeda-beda, dan disana ada makanan yang jika diambila akan menambah nilai”
Buat scenarionya dengan menklik menu scenario lalu new lanjutkan dengan memberi nama scenario. (misalnya Rambo) seperti gambar 4. Lalu akan muncul isian seperti gambar 5
Gambar 4 Membuat scenario baru Gambar 5. Beri nama scenario
Komunitas eLearning IlmuKomputer.Com
Copyright © 2003-2007 IlmuKomputer.Com 2
Jika dilihat di windows explorer maka hasil yang kita lakukan akan terlihat seperti gambar 6
Gambar 6. Hasil pembuatan scenario jika dilihat menggunakan windows explorer
Disana terlihat scenario yang kita buat berbentuk folder dan didalamnya ada 3 folder yang otomatis terbentuk, yaitu : greenfoot, images dan sound. Fungsi folder images adalah untuk menyimpan gambar yang akan kita gunakan, sedangkan folder sound untuk menyimpan file suara yang kita pakai untuk game buatan kita. Folder images dan sound awalnya masih kosong.
Subclass Land (World)
Buatlah sebuah sub class di class world dengan cara klik kanan lalu pilih new subclass seperti gambar 7. Lalu akan muncul jendela baru untuk memasukan nama kelas spt gb. 8 misalnya beri nama Land (perhatikan huruf besar dan kecilnya, karena pada pemrograman java bersifat case sensitive artinya huruf besar dan kecil berpengaruh)
Setelah itu akan muncul jendela coding seperti gambar 9.
Gambar 7. Cara membuat subclass
Gambar8.berinamasubclass
Gambar 9. Jendela coding
Komunitas eLearning IlmuKomputer.Com
Copyright © 2003-2007 IlmuKomputer.Com 3
Perhatikan dibawah Land (subclass Land) ada perintah
super(20, 20, 10);
perintah ini untuk membuat ukuran layar lebar 20 x tinggi 20 dengan ukuran cell 10x10
super(wide, high, cell);
untuk keperluan kali ini buat ukuran (80,20,20)
lalu masukan gambar backgroundnya di folder images (misalnya nama file Walpaper.jpg) lalu set dengan perintah :
setBackground("Wallpaper.jpg");
test program yang dibuat dengan mengklik tombol compile all di pojok kanan bawah spt gbr. 10 dan akan muncul spt gbr. 11
Gambar 10. Test program gambar 11. Hasil test
Subclass Hero (Actor)
Lanjutkan dengan membuat actor yang bermain dalam scenario tersebut. Buat actor baru (subclass actor) dengan cara klik kanan di actor (spt gambar 7 namun di tombol Actor) lalu pilih new subclass kemudian pilih gambarnya dan beri nama subclass tersebut misalnya Hero seperti gambar 12 lalu klik OK
Gbr. 12. Pilih gambar dan beri nama subclasss
Komunitas eLearning IlmuKomputer.Com
Copyright © 2003-2007 IlmuKomputer.Com 4
Untuk melakukan pergerakan perhatikan gambar 13 (Ubah Lokasi)
Instruksi dasar pada perintah ini adalah
public void act() { int x = getX();
int y = getY();
setLocation(x + 1, y);
}
Dapat diartikan jika Act ditekan maka objek akan bergerak secara horizontal (sumbu x) kearah kanan (positif) dan perintah tersebut dapat ditulis dengan lebih ringkas menjadi:
public void act() { setLocation(getX() + 1, getY());
}
Gbr. 13 Pemahaman sumbu X dan Y
Buka jendela coding untuk subclass Hero dan tambahkan kode sbb:
//CONTROL
if (Greenfoot.isKeyDown("right")) {
setLocation(getX() + 2, getY());
}
if (Greenfoot.isKeyDown("left")) {
setLocation(getX() - 2, getY());
}
if (Greenfoot.isKeyDown("up")) {
setLocation(getX(), getY() - 2);
}
if (Greenfoot.isKeyDown("down")) {
setLocation(getX(), getY() + 2);
}
Dasar itulah maka perintah diatas dibuat, yang dapat diartikan sebagai berikut:
Jika panah kanan ditekan maka Hero akan berpindah lokasi kekanan 2 pixel (x+2), jika panah kir ditekan maka Hero akan berpindah lokasi kekiri 2 pixel (x-2), jika panah atas ditekan maka Hero akan berpindah lokasi keatas 2 pixel (y+2) dan jika panah bawah ditekan maka Hero akan berpindah lokasi kebawah 2 pixel (y-2).
Tekan Compile seperti yang terlihat gambar 15 dan pastikan coding yang anda buat sudah sesuai, jika tak ada yang salah akan muncul tulisan Class compiled – no syntax error. Lalu kembali ke jendela Greenfoot: Rambo dan test dengan cara tekan compile all lalu klik kanan pada subclass Hero (spt gb. 14 ) lalu pilih run dan perhatikan actor Hero pergerakannya sudah sesuai dengan harapan kita atau belum ?
Gambar 14. pilihan untuk menampilkan subclass Komunitas eLearning IlmuKomputer.Com
Copyright © 2003-2007 IlmuKomputer.Com 5
Gambar 15. Jendela coding subclass Hero
Lanjutkan dengan membuat actor (subclass) lawannya misal namanya Snake dengan cara klik kanan pada actor dan pilih New subclass spt gbr 16 lanjutkan dengan pemberian nama subclass (snake) spt gambar 17. lalu tekan OK
Gambar 17. Pilih gambar yang dipakai dan beri nama subclass
Gambar 16. Buat actor baru
Komunitas eLearning IlmuKomputer.Com
Copyright © 2003-2007 IlmuKomputer.Com 6
Merubah Rotasi
Untuk merubah rotasi perintah dasarnya adalah:
public void act() {
int rot = getRotation() + 1;
if(rot == 360) {
rot = 0;
} setRotation(rot);
}
Metode ini berarti mengambil object (gambar) pada rotasi sekarang dan akan selalu bertambah 1. Efeknya objek akan bergerak perlahan kearah panah.
Gambar 18. Rotasi
Angka yang benar pada rotasi adalah angka 0-359. Untuk mensiasati ini dibuat pernyataan if(rot == 360) { yang dapat diartikan jika sudah mencapai rotasi 3600 maka rot=0.
Buka jendela coding (double klik pada actor snake) lalu buat pergerakan snake dengan aturan snake akan selalu bergerak sambil berotasi (berputar-putar).
import greenfoot.*; // (World, Actor, GreenfootImage, and Greenfoot)
/**
* Write a description of class snake here.
*
* @author (your name)
* @version (a version number or a date)
*/
public class snake extends Actor
{
/**
* Act - do whatever the snake wants to do. This method is called whenever
* the 'Act' or 'Run' button gets pressed in the environment.
*/
public void act()
{
// Add your action code here.
//pergerakan snake
int rot = getRotation() + 10;
if (rot < 90) {
setLocation(getX() + 2, getY());
}
else if (rot < 180) {
setLocation(getX(), getY() + 2 );
}
else if (rot < 270) {
setLocation(getX() - 2, getY());
}
else if (rot < 360) {
setLocation(getX(), getY() - 2);
}
if (rot > 360) {
rot = 0;
}
setRotation(rot);
}
}
Komunitas eLearning IlmuKomputer.Com
Copyright © 2003-2007 IlmuKomputer.Com 7
Subclass Beruang (actor)
import greenfoot.*; // (World, Actor, GreenfootImage, and Greenfoot)
/**
* Write a description of class beruang here.
*
* @author (your name)
* @version (a version number or a date)
*/
public class beruang extends Actor
{
/**
* Act - do whatever the beruang wants to do. This method is called whenever
* the 'Act' or 'Run' button gets pressed in the environment.
*/
public void act()
{
// Add your action code here.
int rot = getRotation() + 15;
if (rot < 90) {
setLocation(getX() + 1, getY());
}
else if (rot < 180) {
setLocation(getX(), getY() + 1 );
}
else if (rot < 270) {
setLocation(getX() - 1, getY());
}
else if (rot < 360) {
setLocation(getX(), getY() - 1);
}
if (rot > 360) {
rot = 0;
}
setRotation(rot);
}
}
Lanjutkan dengan membuat subclass beruang dengan cara seperti diatas, dengan aturan sama namun subclass beruang jangkauannya lebih kecil (Bukan + 2 tapi + 1 dan rotasi + 15) lihat codingnya dibawah.
Subclass Peluru (actor)
Yang selanjutnya harus dipikirkan adalah untuk melumpuhkan lawan-lawan yang telah dibuat tadi dengan senjata apa ? misalkan si Hero akan melumpuhkan snake dengan menggunakan Peluru sedangkan untuk membunuh Beruang harus menggunakan 2 peluru atau 1 bom. Tombol F1 untuk Peluru dan F2 untuk Bom. Baiklah kita lanjutkan dengan membuat subclass Peluru. Masukan file suara (suara tembakan ke folder sounds – disini penulis pakai file EnergyGun.wav) dengan cara spt diatas dan pilih gambar peluru (bisa ambil di internet atau buat sendiri dengan pengaolah gambar – penulis pakai file bullet.png diambil dari file asteroid (greenfoot) hasil download).
Komunitas eLearning IlmuKomputer.Com
Copyright © 2003-2007 IlmuKomputer.Com 8
Komunitas eLearning IlmuKomputer.Com
Copyright © 2003-2007 IlmuKomputer.Com 9
Bahan Praktikum Sistem Basis Data-DBMS MySQL
Bagian Ke-1
MySQL
MySQL adalah suatu perangkat lunak Database Relasional (Relational Database Management System atau RDBMS) , seperti halnya Oracle, Postgreslq, SQL Server, dll.
Awalnya MySQL dijalankan pada sistem operasi Unix dan Linux, tapi bagi para penggemar windows pun sekarang sudah tersedia MySQL versi Windowsnya. Mereka yang menggunakan Linux (RedHat, Mandrake, dsb) biasanya MySQL sudah terinstal secara default. Bila belum bisa diinstal dengan menggunakan RPM (RedHat Package Manager, merupakan prosedur instalasi software yang menjadi standard de facto untuk Linux).
Bagi yang terbiasa menggunakan OS Windows, sudah tersedia paket software yang merangkum MySQL, Apache webserver dan PHP yang sangat mudah untuk diinstal. Software tersebut adalah PHPTriad.
Menjalankan MySQL Pertama Kali
Paket PHP Triad biasanya diinstal pada direktori/folder C:\Apache. Karena PHPTriad merupakan kumpulan paket dari Apache, MySQL dan PHP dan masing-masing software tersimpan pada direktori khusus. Untuk MySQL ada pada direktori C:\apache\mysql , sedangkan untuk file-file eksekusinya ada di direktori C:\apache\mysql\bin.
• Pada sistem prompt (Command Prompt/MS DOS Prompt) masuklah ke direktori mysql\bin
C:\> CD apache\mysql\bin <enter>
• Jalankan program MySQL server (pada saat ini komputer kita bertindak seolah-olah sebagai sebuah server).
C:\apache\mysql\bin > mysqld --console <enter>
Bila perintah ini berjalan dengan baik, maka pada layar akan ditampilkan pesan :
Mysqld: ready for conections
Perhatikan pada kata ‘conections’ dengan bentuk jamak (menggunakan akhiran s), dengan demikian komputer kita tersebut telah menjalankan fungsinya sebagai mysql server dan dapat melayani lebih dari satu koneksi (client). Jangan tutup jendela layar tersebut, jika anda menutup jendela layar tersebut, maka program MySQL server akan dihentikan juga oleh sistem. Kemudian bukalah sebuah jendela system prompt yang baru. Dan masuklah ke direktori c:\apache\mysql\bin
C:\> CD apache\mysql\bin <enter>
• Kemudian jalankan program mysql client dengan mengetikan mysql pada sistem prompt
C:\apache\mysql\bin > mysql <enter>
Bila perintah tersebut berhasil, maka pada layar akan tampil ucapan selamat datang dari MySQL :
Bila tulisan di atas sudah muncul di komputer kita, artinya kita sudah berada di dalam DBMS MySQL.
Oleh : Badrudin Hadibrata I - 1
Bahan Praktikum Sistem Basis Data-DBMS MySQL
Ada beberapa perintah yang sering digunakan di dalam DBMS MySQL, antara lain :
􀀹 Create Database nama_database ;
Digunakan untuk membuat sebuah database baru
􀀹 Show Databases ;
Digunakan untuk menampilkan database apa saja yang terdapat didalam DBMS MySQL
􀀹 Use nama_database ;
Digunakan untuk mengaktifkan database yang dimaksud
􀀹 Show tables ;
Digunakan untuk menampilkan/melihat tabel-tabel apa saja yang terdapat di dalam database yang sudah dipilih/diaktifkan
􀀹 Describe nama_tabel ;
Digunakan untuk melihat struktur tabel yang dimaksud
􀀹 Show Columns From nama_tabel ;
Digunakan untuk melihat culum-colum yang terdapat pada tabel yang dimaksud
􀀹 Flush Privileges ;
Perintah yang digunakan untuk mengaktifkan perubahan-perubahan yang terjadi pada user, seperti hak akses, penggantian password pada user, dsb.
􀀹 Quit ;
Digunakan untuk keluar dari sistem DBMS MySQL
Cara Menulis Perintah
Ada beberapa catatan dalam penulisan perintah (query) dalam MySQL, antara lain :
􀂃 Penulisan statement bisa ditulis dalam huruf besar maupun huruf kecil
Contohnya, pernyataan di bawah ini dapat ditulis dengn huruf besar (SELECT, COUNT, dll) maupun huruf kecil (select, count, dll).
Mysql> SELECT * FROM USER;
Mysql> select * from user;
Mysql> seleCt * FRom user;
􀂃 Penulisan nama kolom (field) membedakan huruf besar dan huruf kecil (case sensitive).
Contohnya, pernyataan di bawah ini tidak akan bekerja dikarenakan penulisan nama tabel yang tidak konsisten (my_tabel dan MY_TABEL). Untuk mengurangi kesalahan akibat penulisan, disarankan untuk selalu menggunakan huruf kecil.
Mysql> select * from my_tabel where MY_TABEL.COL=1;
􀂃 Pernyataan tidak harus ditulis dalam satu baris (single line). Jika layar tidak mencukupi dalam menulis panjangnya query, dapat dilanjutkan di bawahnya (multiple line) dengan menekan tombol enter.
Contohnya, query di bawah ini yang dinyatakan dalam beberapa baris :
Mysql> select
-> user()
-> ,
-> version();
Dari contoh di atas terlihat, bahwa prompt “mysql>” berubah menjadi “->” jika pernyataan dituliskan tidak lengkap. Pernyataan dianggap lengkap jika sudah diakhiri dengan tanda titik koma (;). Namun, meskipun sudah lengkap belum tentu dianggap benar. Karena itu berhati-hatilah menuliskan query.
Berkaitan dengan prompt di atas, dapat dilihat kekurangan kita dalam penulisan query. Setiap prompt mempunyai arti berbeda yang dapat menunjukan kekurangan penulisan query.
Jenis Prompt
Prompt
Arti
mysql>
Siap untuk perintah baru
->
Menunggu baris perintah berikutnya
Oleh : Badrudin Hadibrata I - 2
Bahan Praktikum Sistem Basis Data-DBMS MySQL
‘>
Menunggu baris perintah berikutnya, karena pernyataan yang diawali dengan tanda petik satu (‘) tidak/belum ditutup dengan tanda yang sama.
“>
Menunggu baris perintah berikutnya, karena pernyataan yang diawali dengan tanda petik dua (“) tidak/belum ditutup dengan tanda yang sama.
Oleh : Badrudin Hadibrata I - 3