Tabel 3.6. Skenario Tampilkan Cerita level 3
Identifikasi Nomor
4
Nama Tampilkan cerita Level 3
Tujuan Menampilkan Level 3
Deskripsi
Proses untuk memainkan level 3
Aktor User
Skenario Utama Kondisi Awal
User berada dibagian menu utama
Aksi Aktor Reaksi Sistem
9. Memilih menu “mulai”
10. Aplikasi merespon dengan cara masuk ke permainan level 3
Kondisi Akhir Aplikasi menampilkan level 3
3.3.4 Activity Diagram
Activity diagram menggambarkan berbagai aliran aktivitas dalam sistem yang sedang dirancang. Berikut ini beberapa activity diagram yang terdapat pada game
tersebut yaitu :
1. Activity Proses Menu Cerita Activity digram menggambarkan berbagai aliran aktivitas dalam sistem
yang sedang berjalan, bagaimana masing-masing alir berawal, proses yang terjadi dan bagaimana mereka berakhir
Sistem Pemain
Menjalankan Game
Memilih cerita Menampilkan menu utama
menampilkan Level 1
Tampilkan Cerita Level 2 menampilkan Level 2
Tampilkan Cerita level 3
menampilkan Level 3
Menampilkan tamat Tampilkan permainan Usai
Tampilkan Cerita Level 1
Gambar 3.9 Activity Diagram Cerita
2. Activity Proses Petunjuk Menu control digunakan pemain untuk melihat petunjuk permainan,
proses yang terjadi pada menu petunjuk bisa di lihat pada gambar
Gambar 3.10 Activity Diagram petunjuk
3.3.5 Class Diagram
Class diagram adalah suatu diagram yang memperlihatkan suatu struktur dari sebuah system.
Nama nama kelas yang ada dalam game ini adalah sebagai berikut : Sistem
Pemain
Menjalankan Game
Memilih Petunjuk Menampilkan Menu utama game
Menampilkan tampilan petunjuk
Gambar 3.11 Class Diagram
world
+world +setBackgroundgreenfottImage image: void {final}
+getbackground: greenfootImage +getwidth: int
+getheight: int +getCellSize: int
+act: void +started: void
latar
+lebar: int {static final} +tinggi: int {static final}
+tengah: int {static final} -kecepatanBergeser: int {static final}
-index: int -level: int
-akhir: int {static} ~hidup: boolean
~isPermainanUsai: boolean ~istamat: boolean
~isCerita1: boolean ~isCerita2: boolean
~isCerita3: boolean ~isPetunjuk: boolean
-posisiAwal: int -jumlahMusuh: int{static final}
-jumlahMusuh2: int {static final} -jumlahMusuh3: int {static final}
-latar: greenfootImage -latarbelakang: greenfootImage
-latarBergerak: greenfootImage -tanah: color
-akhirlevel: color -km: keluarkanmusuh
~tm: TombolMulai ~tp: tombolPetunjuk
~tktombolKembali ~ps: PermainanSelesai
~g: gagal ~tpk: TampilanPetunjuk
~khz: KHZaenalMustofa ~dkhz: darahKHZaenalMustofa
~pb: PrajuritBelanda ~jb: JendralBelanda
~djb: darahJendralBelanda ~pj: prajuritJepang
~djj: DarahJendralJepang ~jj: JendralJepang
~kj: KaptenJepang ~dkj: darahKaptenJepang
~t: tamat ~tc: TombolCerita
~c1: Cerita1 ~c2: cerita2
~tm2: tombolMulai2 ~c3: cerita3
~tm3: TombolMulai3 ~tk2: TombolKembali2
~tmu: TampilanMenuUtama
+latar +menugame: void
+act: void +tampilanPetunjuk: void
+tampilanCerita1: void +TampilanCerita2: void
+tampilancerita3: void +gagal: void
+tamat: void +geserint d
+geser2int d: boolean -pergeseranint x: void
-tentukanposisiawalint x +jenisMusuhLevel1: void
+jenisMusuhLevel2: void +jenisMusuhLevel3: void
-cetak: void -posisimusuhlevel1: void
-posisiMusuhLevel2: void -posisiMusuhLevel3: void
+level1: void +Level2: void
+level3: void +tanahpijakanint xPos, int yPos: boolean
+getKHZaenalMustofa: KHZaenalMustofa +getdarah1: DarahKHZaenalMustofa
+getPrajuritBelanda: PrajuritBelanda +getJendralBelanda: Jendralbelanda
+getdarah2: DarahJendralBelanda +getPrajuritJepang: PrajuritJepang
+getjendraljepang: JendralJepang +getdarah3: darahJendralJepang
+getKaptenJepang: KaptenJepang +getDarah4: DarahKaptenJepanng
actor
+actor +getX: int
+getY: int +getRotation: int
+setRotation: int +turnTowardsint x, int y: void
+setLocationint x, int y: void +moveint distance: void
+turnint amount: void +getWorld: world
addedToWorldworld world +getImage: GreenfootImage
+setImagegreenfootImage image: void +intersectsactor other: boolean
DarahKaptenJepang
-jumlahdarah: int -gambardarah: greenfootImage
-latar 1 ~kj: KaptenJepang
+DarahKaptenJepang +addedToWorldworld world: void
+deretGambar: void +KenaSerang: void
+KenaSerang2: void +kenaSerang3: void
+getJumlahDarah: int
MidiPlayer
-sequencer: sequencer -isFileOpen: boolean
+CONTINUOUS: int {static final} -midiFile: string
+MidiPlayer +MidiPlayerstring file
+getIsFileopen: boolean +getloopCount: int
+isPlaying: boolean +getMidiFile: string
+toString: string +setLoopCountint count: void
+open: void +loadstring File: void
+play: void +stop: void
+close: void
TombolMulai
-Tombol1: GreenfootImage -Tombol2: GreenfootImage
+TombolMulai +act: void
+TombolMulai +BerubahBentuk: void
KHZaenalMustofa
-1: latar -Kecepatan: int
-kecepatan2: int -percepatan: int
-kuatLoncat: int -batas1: int
-batas2: int -hadapkanan: boolean
-loncat: boolean -serang: boolean
-jurus1: boolean -jurus2: boolean
-hidup: boolean +nangkis: boolean
+serngkanan: greenfootimage +serangkiri: greenfootimage
+juruskanan: greenfootimage +juruskiti: greenfootimage
+lemparbambukanan: greenfootimage +lemparbambukiri: greenfootimage
+loncatkanan: greenfootimage +loncatkiri: greenfootimage
+tangkiskanan: greenfootimage +tangkiskiri: greenfootimage
+matikanan: greenfootimage +matikiri: greenfootimage
+Jurusbatukanan: greenfootimage +jurusbatukiri: greenfootimage
~bambu1 ~bambu2
+KHZaenalMustofa +addedToworldworld world: void
-cetak: void +run: void
+mati: void +jatuh: void
+tombol: void +kenaserang: void
+nangkis: void +isNangkis: boolean
+isSerang: boolean +isjurus1: boolean
+isJurus2: boolean -lempar: void
-jurus: void -jurus2: void
-serang: void -serangjurus1: void
-serangjurus2: void -loncat: void
+geserkananint x: void +jalankananint x: void
+jalanKiri: void
TombolKembali
-tombol 1: greenfoot Image +Attribute1
-Tombol 2: GreenfootImage +tombolKembali
+act +BerubahBentuk: void
DarahKHZaenalMustofa
-jumlahDarah: int -gambarDarah: greenfottImage
-Latar 1 ~khz: KHZaenalMustofa
+DarahKHZaenalMustofa +addedToWorldworld world
+cetak: void +kenaSerang: void
+kenaSerang2: void +kenaSerang3: void
+kenaSerang4: void +tangkis: void
+getJumlahDarah: int
DarahJendralBelanda
-jumlahDarah -Gambardarah: greenfootImage
-latar 1 ~jb: jendralBelanda
+darahJendralBelanda +addedToWorldworld World
+deretGambar: void +KenaSerang: void
+KenaaSerang2: void +kenaSerang3: void
+getjumlahDarah: int
KeluarkanMusuh
-tipemusuh: int +posisiMusuh: int
+KeluarkanMusuh +tentukanTipeMusuhint x: void
+tentukanPosisiMusuhint x: void +dapatkanTipeMusuh: int
+dapatkanposisimusuh: int
WavPlayer
-stream: AudioinputStream -line: SourceDataLine
-loops: int -loopCount: int
-isPlaying: boolean -filename: string
+totalRead: long +WavPlayer
+setLoopsint n: void +Operation1
+getloopCount: int +getIsPlaying: boolean
+openstring name: boolean +reset: void
+close: boolean +play: boolean
+stop: void
DarahJendralJepang
-jumlahDarah: int -gambarDarah: greenfootImage
-latar 1 +DarahJendralJepang
+addedToWorldworld world: void +deretGambar: void
+kenaSerang: void +Operation1
+kenaserang2: void +kenaserang3: void
+getjumlahdarah: int
TombolPetunjuk
-tombol1: greenfootImage -tombol2: GreenfootImage
+TombolPetunjuk +act: void
+berubahBentuk: void
Pergerakan
-kecepatanJalan: double {static final} +jalan: void
+jalandouble distance: void
JendralJepang
-jalankanan: greenfootImage -jalanKiri: greenfootImage
-tusukakanan: greenfootImage -tusukkiri: greenfootImage
-tebaskanan: greenfootImage -tebaskiri: greenfootImage
-tembakkanan: greenfootImage -tembakkiri: greenfootImage
-matikanan: greenfootImage -matikiri: greenfootImage
-jurus1kanan: greenfootImage -jurus1kiri: greenfootImage
-jurus2kanan: greenfootImage -jurus2kiri: greenfootImage
-kenaserangkanan: greenfootImage -kenaserangkiri: greenfootImage
-sayatkanan: greenfootImage -sayatkiri: greenfootImage
-1: latar -hitungan: int
-kecepatan2: int -percepatan: int
-pengahalan1: int -penghalang2: int
-KecepatanJalan: double -hadapkanan: boolean
+hidup: boolean +jurus1: boolean
+jurus2: boolean +serang: boolean
~khz: KHZaenalMustofa ~dkhz: darahKHZaenalMustofat
-t: thread{volatile} -kecepatan1: int
-kuatloncat: int ~djj: darahjendraljepang
~pj1: pelurujendral1 ~pj2: pelurujendral2
-tambahcepat: double +Attribute1
+JendralJepang +cetak: void
+addedToWorldworld world: void +run: void
-meloncat: void -jatuh: void
-mengejar: void +tumbukan: void{synchronized}
+isSerang: boolean +isJurus1: boolean
+isJurus2: boolean -serangjurus1: void
-serangjurus2: void -serangan: void
+kenaserang: void{synchronized} +mati: void
-gambarjalan: void
Bambu1
~pb: prajuritBelanda -Thread t: volatile
+1: latar -hidup: boolean
-batas2: int ~pj: prajuritJepang
~jb: jendralJepang ~djj: darahJendralJepang
~jj: jendralJepang ~djj: darahJendralJepang
~kj: kaptenJepang ~dkj: darahKaptenJepang
+bambu2 +addedToWorldworld world: void
+run: void
Bambu1
~pb: prajuritBelanda -Thread t: volatile
+1: latar -hidup: boolean
-batas2: int ~pj: prajuritJepang
~jb: jendralJepang ~djj: darahJendralJepang
~jj: jendralJepang ~djj: darahJendralJepang
~kj: kaptenJepang ~dkj: darahKaptenJepang
+bambu2 +addedToWorldworld world: void
+run: void
KaptenJepang
-jalankanan: greenfootImage -jalanKiri: greenfootImage
-tusukakanan: greenfootImage -tusukkiri: greenfootImage
-tebaskanan: greenfootImage -tembakkanan: greenfootImage
-tembakkiri: greenfootImage -matikanan: greenfootImage
-matikiri: greenfootImage -jurus1kanan: greenfootImage
-jurus2kanan: greenfootImage -jurus2kiri: greenfootImage
-kenaserangkanan: greenfootImage -kenaserangkiri: greenfootImage
-sayatkanan: greenfootImage -sayatkiri: greenfootImage
-1: latar -hitung: int
-kecepatan2: int -percepatan: int
-penghalang1: int -penghalang2: int
-KecepatanJalan: double -hadapkanan: boolean
+hidup: boolean +jurus1: boolean
+jurus2: boolean +serang: boolean
~khz: KHZaenalMustofa ~dkhz: darahKHZaenalMustofat
-t: thread{volatile} -kecepatan1: int
-kuatloncat: int ~darahkaptenJepang
~pj1: pelurujendral1 ~pj2: pelurujendral2
-tambahcepat: double
+KaptenJepang +cetak: void
+addedToWorldworld world: void +run: void
-meloncat: void -hatuh: void
-mengejar: void +tumbukan: void{synchronized}
+isSerang: boolean +isJurus1: boolean
-serangjurus1: void -serangjurus2: void
-serangan: void +kenaserang: void{synchronized}
+mati: void -gambarjalan: void
JendralBelanda
-latar 1 -hitungan: int
-Kecepatan2: int -perceptan: int
-penghalan1: int -penghalang2: int
-Thread t: volatile +JendralBelanda
+cetak: void +addedToWorldworld world
+run -meloncat: void
-jatuh -mengejar: void
-tumbukan: void +isSerang: boolean
+isJurus1: boolean
peluru2
~khz: KHZaenalMustofa ~dkhz: darahKHZaenalMustofa
-Thread t: volatile ~1: latar
-Hidup: boolean +Batas2: int
+Peluru2 +addedToWorldworld world
+run
Peluru1
-Thread t: volatile -hidup: boolean
-batas2: int +peluru1
+addedToWorldworld world +run
PrajuritBelanda
-Thread t: volatile +PrajuritBelanda
+cetak: void +trkenaSerangan: void
+run: void -gambarJalan: void
-jatuh: void +mati: void
-meloncat: void -mengejar: void
PrajuritJepang
+jumlahDarah: int +PrajuritJepang
-seranganSabetan: void +public isSabetan: boolean
+cetak: void +addedToWorldWorld World: void
+terkenaSerangan: void +run: void
-gambarJalan: void -synchronized tumbukan: void
-jatuh: void +mati: void
-meloncat: void -mengejar: void
+Operation1
PeluruJendral1
-Thread t: volatile -hidup: boolean
-batas2: int +PeluruJendral1
+addToWorldworld word: void +run: void
PeluruJendral2
-Thread t: volatile -hidup: boolean
-batas2: int +peluruJendral2
tombolMulai2
-Tombol1: GreenfootImage -Tombol2: GreenfootImage
+TombolMulai2 +act: void
+berubahBentuk: void
TombolMulai3
-tombol1: GreenfootImage -tombol2: GreenfootImage
+tombolMulai3 +act: void
+berunahBentuk: void
TombolCerita
-tombol1: GreenfootImage -Tombol2: GreenfootImage
+TombolCerita +act: void
+berubahBentuk: void
tombolKembali2
-Tombol1: GreenfootImage -Tombol2: GreenfootImage
+TombolKembali2 +act: void
+BerubahBentuk: void
Bambu2
Setiap kelas memiliki jenis kelasnya masing – masing seperti yang
terlihat pada Tabel 3.7. Tabel 3.7. Deskripsi Class Diagram
Deskripsi Class No
Nama Jenis
1. World Boundary
2. Latar Boundary
3. Actor Boundary
4. Tombolmulai2 Boundary
5. Tombolmulai3 Boundary
6. Tombolcerita Boundary
7. MidiPlayer Boundary
8. Tombolmulai Boundary
9. Tombolkembali2 Boundary
10. Tombolkembali Boundary
11. Wavplayer Boundary
12. TombolPetunjuk Boundary
13. darahkaptenJepang Entity
14. KHZaenalMustofa Entity
15. darahKHZaenalMustofa Entity
16. DarahJendralBelanda Entity
17. KeluarkanMusuh Entity
18. darahJendralJepang Entity
19. Pergerakan Control
20. JendralJepang Control
21. Bambu1 Control
22. Bambu2 Control
23. KaptenJepang Control
24. JedralBelanda Control
25. Peluru2 Control