Tugas 8 - Implementasi World of Zull

 Source Code: https://github.com/rsthopaz/World-of-Zull

Explanation:

1). Room


Room mewakili satu lokasi dalam pemandangan permainan. Ruangan tersebut terhubung ke ruangan lain melalui pintu keluar. Pintu keluar diberi label utara, timur, selatan, barat. Untuk setiap arah, ruangan menyimpan referensi ke ruangan di sebelahnya, atau null jika tidak ada pintu keluar ke arah tersebut

if(north != null) northExit = north; Jika parameter utara tidak null, parameter tersebut akan ditetapkan ke variabel northExit. Pemeriksaan dan penetapan serupa dilakukan untuk pintu keluar timur, selatan, dan barat.


2). CommandWords


isCommand akan membandingkan setiap perintah yang valid dengan string yang diberikan menggunakan equals(). Jika ditemukan kecocokan, ia mengembalikan true. Metode isCommand menyediakan cara untuk memverifikasi apakah masukan pengguna valid, sehingga memungkinkan interaksi pengguna dan penanganan kesalahan yang lebih baik. Jika pemain mengetik perintah yang tidak dikenali, permainan dapat memberi tahu mereka.


3). Command

Kelas Command merangkum konsep perintah pengguna dalam permainan, yang memungkinkan perintah dengan parameter opsional. Metode menyediakan cara untuk mengambil perintah dan komponennya, memeriksa apakah perintah tersebut valid, dan menentukan apakah konteks tambahan (kata kedua) disediakan. Singkatnya, kelas Command ini penting untuk menangani dan menginterpretasikan masukan pengguna dalam permainan berbasis teks, yang menyediakan cara terstruktur untuk mengelola perintah dan argumen potensialnya.


4). Parser

Scanner digunakan untuk membagi baris input menjadi kata-kata. Scanner memeriksa apakah ada kata pertama. Jika ada, pemindai menetapkannya ke kata1. Jika ada kata kedua, pemindai menetapkannya ke kata2. Kata-kata tambahan diabaikan.

Check apakah word1 adalah perintah yang valid menggunakan metode isCommand dari objek perintah Jika word1 valid, ia membuat objek Perintah baru dengan word1 sebagai perintah dan word2 sebagai kata kedua opsional. Jika word1 tidak valid, ia membuat perintah "null" dengan null sebagai kata perintah dan word2 sebagai kata kedua. Metode ini adalah kunci untuk interaksi pengguna, yang memungkinkan pemain memasukkan perintah yang dapat mencakup tindakan dan target atau konteks.
Metode ini menangani perintah yang valid dan tidak valid, memastikan permainan dapat merespons

Singkatnya, metode getCommand() memproses masukan pengguna untuk mengekstrak perintah dan argumen potensialnya, yang membuat objek Perintah terstruktur untuk memfasilitasi pemrosesan lebih lanjut dalam logika permainan. Ia meningkatkan pengalaman pengguna dengan menangani berbagai skenario masukan dengan baik.

5). Game

Room outside, theater, pub, lab, office; Di sini, beberapa variabel Room dideklarasikan untuk merepresentasikan ruangan yang berbeda di dalam permainan. outside memiliki jalan ke theater, lab, dan pub. theater hanya dapat diakses kembali ke outside. pub mengarah kembali ke outside. lab memiliki jalan ke outside dan office. office hanya dapat diakses dari lab.


Command command = parser.getCommand(); Di sini, objek Command diambil dari parser. Metode getCommand() bertanggung jawab untuk membaca perintah yang diberikan oleh pemain.


String commandWord = command.getCommandWord(); Kata perintah diambil dari objek Command untuk memproses lebih lanjut. Jika help maka akan print Method printHelp() dan seterusnya.


How to Run?

1). Compile semua program atau bisa compile main (Game);
2). Klik kanan pada Game -> new Game() -> Masukkan nama instance
3). Klil kanan dan pilih void play();
4). Beri inputan string di bagian bawah

Diagram Class:



Komentar

Postingan populer dari blog ini

The Busy Beaver Problem

Tugas 15 - Final Project

Church-Turing Thesis dan Kaitannya dengan Bahasa Pemrograman