pengenalan greenfoot
DESCRIPTION
Pengenalan GREENFOOT. Pemrograman Game. Eko Prasetyo Teknik Informatika Univ. Pembangunan Nasional Veteran Jawa Timur 2012. Greenfoot. Skenario game. Object World. Instansiasi kelas ( objek ). Kelas World. Class DIagram. Kontrol eksekusi. Pengatur kecepatan. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Pengenalan GREENFOOT](https://reader033.vdocuments.pub/reader033/viewer/2022061420/56813bfa550346895da545ce/html5/thumbnails/1.jpg)
Pengenalan GREENFOOTPemrograman Game
Eko PrasetyoTeknik Informatika
Univ. Pembangunan Nasional Veteran Jawa Timur2012
![Page 2: Pengenalan GREENFOOT](https://reader033.vdocuments.pub/reader033/viewer/2022061420/56813bfa550346895da545ce/html5/thumbnails/2.jpg)
2
Greenfoot
![Page 3: Pengenalan GREENFOOT](https://reader033.vdocuments.pub/reader033/viewer/2022061420/56813bfa550346895da545ce/html5/thumbnails/3.jpg)
3
Skenario game
Object World
Instansiasi kelas (objek) Kelas
World
Class DIagram
Kontrol eksekusi
Compile source code
Pengatur kecepatan
![Page 4: Pengenalan GREENFOOT](https://reader033.vdocuments.pub/reader033/viewer/2022061420/56813bfa550346895da545ce/html5/thumbnails/4.jpg)
4
Greenfoot Skenario berguna untuk mengilustrasikan interaksi
antara obyek (konsep Object Oriented) dalam game. Ada 2 kelas dasar dalam Greenfoot: World dan Actor. World (Dunia):
◦ Lingkungan (daerah) paling luas (window) yang meng-cover semua bagian aplikasi.
◦ Tempat aktor beraksi dan berinteraksi antar aktor Actor (Pelaku):
◦ Obyek (aktor) dalam World yang tampil seolah hidup dan berinteraksi dengan objek yang lain.
◦ Menggunakan konsep OOP secara penuh. Class Diagram: Berisi kontrol hierarki kelas aktor. Kontrol eksekusi:
◦ Act: Aktor menjalankan aktivitasnya 1 kali.◦ Run: Aktor menjalankan aktivitasnya secara terus menerus.◦ Reset: Mengembalikan susunan skenario ke kondisi awal.
![Page 5: Pengenalan GREENFOOT](https://reader033.vdocuments.pub/reader033/viewer/2022061420/56813bfa550346895da545ce/html5/thumbnails/5.jpg)
5
Skenario 1: Ikan dan Orang
Aktor ikan1 bergerak dari kiri ke kanan.
Aktor ikan2 bergerak dari kanan ke kiri.
Jika ikan mencapai tepi lingkungan maka muncul disisi seberang (seolah akuarium melingkar).
Aktor orang, dapat bergerak ke atas dan kebawah, dapat mengeluarkan peluru.
![Page 6: Pengenalan GREENFOOT](https://reader033.vdocuments.pub/reader033/viewer/2022061420/56813bfa550346895da545ce/html5/thumbnails/6.jpg)
6
Aktivitas Aktor Ikan
public void gerak1(int step) { if (getX() >= getWorld().getWidth()-10) { setLocation(10,getY()); }else { setLocation(getX()+step,getY()); } } public void gerak2(int step) { if (getX() <= 10) { setLocation(getWorld().getWidth()-10,getY()); }else { setLocation(getX()+step,getY()); } }
Gerak ke kanan
Gerak ke kiri
Kelas Ikan
protected int langkah=1; Deklarasi properti pada level kelas Ikan
![Page 7: Pengenalan GREENFOOT](https://reader033.vdocuments.pub/reader033/viewer/2022061420/56813bfa550346895da545ce/html5/thumbnails/7.jpg)
7
Aktivitas Aktor Ikan
public void balik() { if (Greenfoot.isKeyDown("a")) { langkah = -langkah; } };
Balik arah
public class Ikan1 extends Ikan{ /** * Act - do whatever the Ikan1 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. balik(); gerak1(langkah); } }
Panggil fungsi di kelas Ikan1
Method (behaviour) yang terus dijalankan oleh greenfoot selama aplikasi dijalankan.
![Page 8: Pengenalan GREENFOOT](https://reader033.vdocuments.pub/reader033/viewer/2022061420/56813bfa550346895da545ce/html5/thumbnails/8.jpg)
8
Library method aktor dalam Greenfoot
void setLocation(X,Y)
int getX()
int getY()
boolean Greenfoot.isKeyDown(String karakter)
getWorld().getWidth()
void setDirection(int direction)
getWorld(). getHeight()
getWorld().addObject(new Class(),X,Y)
getWorld().removeObject(this);
Menetapkan posisi aktor pada koordinat X,Y
Mendapatkan koordinat X obyek pada saat ituMendapatkan koordinat Y obyek pada saat itu
Memeriksa tombol keyboard yang ditekan
Mendapatkan lebar lingkungan
Mendapatkan tinggi lingkungan
Membuat obyek baru
Menghapus obyek
![Page 9: Pengenalan GREENFOOT](https://reader033.vdocuments.pub/reader033/viewer/2022061420/56813bfa550346895da545ce/html5/thumbnails/9.jpg)
9
Aktivitas aktor Orang public void act() { // Add your action code here. gerak(); tembak(); } public void gerak(){ if (Greenfoot.isKeyDown("r")) { setLocation(getX(),getY()-1); } else if (Greenfoot.isKeyDown("c")) { setLocation(getX(),getY()+1); } } public void tembak() { int X = getX(); int Y = getY(); if (Greenfoot.isKeyDown("p")) { getWorld().addObject(new Peluru(),X,Y); }; }
Gerak ke atas atau ke bawah
Mengeluarkan peluru (menembak)
![Page 10: Pengenalan GREENFOOT](https://reader033.vdocuments.pub/reader033/viewer/2022061420/56813bfa550346895da545ce/html5/thumbnails/10.jpg)
10
Aktivitas aktor Peluru
public void act() { // Add your action code here. gerak(); } public void gerak() { setLocation(getX()+1,getY()); if (getX() >= getWorld().getWidth()-10) { getWorld().removeObject(this); } };
Jika peluru sudah sampai di ujung, maka dihapus
![Page 11: Pengenalan GREENFOOT](https://reader033.vdocuments.pub/reader033/viewer/2022061420/56813bfa550346895da545ce/html5/thumbnails/11.jpg)
11
Game Little-Crab
Skenario: Kepiting makan cacing, jika menabrak lobster maka kepiting mati dan membunyikan suara.
![Page 12: Pengenalan GREENFOOT](https://reader033.vdocuments.pub/reader033/viewer/2022061420/56813bfa550346895da545ce/html5/thumbnails/12.jpg)
12
SAATNYA ANDA MEMBUAT GAME(PERILAKU AKTOR)
Tugas I