TUGAS 7 - WORLD OF ZUUL

 

PENJELASAN SINGKAT KODE WORLD OF ZUUL

Nama : Winda Nafiqih Irawan

NRP : 5025231065

Kelas : Pemrogramman Berbasis Obyek

Berikut source code untuk program kalkulator java : GitHub-World Of Zuul

1. Kelas Game:

Kelas Game adalah kelas utama yang bertanggung jawab untuk mengatur alur permainan. Di sini, ruangan-ruangan (objek Room) dibuat dan dihubungkan satu sama lain melalui metode createRooms(). Kelas ini juga mengelola siklus utama permainan melalui metode play(), yang berisi loop untuk menerima input dari pemain dan memproses perintah tersebut. Perintah dari pemain diterima melalui objek Parser, kemudian diproses oleh metode processCommand(). Dalam metode ini, permainan dapat menerima perintah untuk berpindah ruangan (go), meminta bantuan (help), atau mengakhiri permainan (quit). Kelas ini juga memuat informasi tentang lokasi pemain saat ini (currentRoom) dan mengatur tindakan-tindakan yang dilakukan pemain di dalam ruangan tersebut.

2. Kelas Room:

Kelas Room digunakan untuk merepresentasikan ruangan dalam permainan. Setiap ruangan memiliki deskripsi dan pintu keluar yang menghubungkan ke ruangan lain. Atribut exits disimpan dalam bentuk HashMap, di mana setiap arah (misalnya, "north", "south") terhubung ke objek Room lain yang merupakan ruangan tetangga. Metode seperti setExit() digunakan untuk menambahkan pintu keluar ke ruangan, sementara getExit() digunakan untuk mengambil ruangan tetangga berdasarkan arah yang diberikan oleh pemain. Selain itu, metode getExitString() menyediakan daftar arah yang tersedia bagi pemain untuk bergerak. Dengan demikian, kelas ini memberikan representasi ruang lingkup permainan yang dapat dijelajahi oleh pemain.

3. Kelas Parser:

Kelas Parser berfungsi sebagai penghubung antara input dari pemain dan sistem permainan. Ia membaca input dari pemain menggunakan objek Scanner dan memprosesnya menjadi objek Command. Metode getCommand() menerima masukan dari pengguna, memecahnya menjadi dua kata (kata perintah dan kata tambahan opsional), dan mengubahnya menjadi objek Command yang nantinya diproses oleh kelas Game. Selain itu, Parser juga memiliki metode showCommands(), yang menampilkan semua perintah yang valid di permainan. Kelas ini bekerja sama dengan CommandWords untuk memastikan bahwa hanya perintah-perintah yang valid yang diproses oleh sistem.

4. Kelas CommandWords:

Kelas CommandWords adalah kamus yang berisi perintah-perintah yang valid dalam permainan, seperti "go", "help", dan "quit". Perintah-perintah ini disimpan dalam bentuk HashMap di mana kata perintah adalah kunci dan deskripsinya adalah nilai. Kelas ini memiliki metode seperti isCommand() untuk memeriksa apakah sebuah string adalah perintah yang valid, dan showAll() yang menampilkan semua perintah yang tersedia kepada pemain. Kelas ini bekerja sama dengan Parser untuk memverifikasi input pemain dan memastikan bahwa perintah yang tidak dikenal tidak diproses lebih lanjut.

5. Kelas Command:

Kelas Command adalah representasi dari perintah yang diberikan oleh pemain. Setiap objek Command menyimpan dua kata: commandWord (kata perintah utama, seperti "go") dan secondWord (kata tambahan opsional, seperti arah "north"). Metode seperti getCommandWord() dan getSecondWord() digunakan untuk mengambil kata perintah dan kata tambahan. Kelas ini juga memiliki metode hasSecondWord() yang memeriksa apakah ada kata tambahan, serta isUnknown() yang mengecek apakah kata perintah utama tidak dikenal. Kelas ini digunakan oleh kelas Game untuk menentukan tindakan apa yang harus diambil berdasarkan perintah yang diberikan oleh pemain.

Komentar

Postingan populer dari blog ini

EAS

TM 13 - IMPLEMENTASI ABSTRAKSI CLASS

TM 12 - SISTEM PRAPESAN TIKET PESAWAT DENGAN IMPLEMENTASI POLYMORPHISM DALAM OOP