world of zul
WORLD OF ZUUL
Command
Kelas Command digunakan untuk merepresentasikan perintah pengguna yang terdiri dari dua kata (misalnya, command dan argument).
Atribut:
commandWord: Kata pertama dari perintah (misalnya, aksi yang ingin dilakukan).secondWord: Kata kedua dari perintah (opsional, biasanya parameter tambahan).
Metode Utama:
getCommandWord: Mengembalikan kata pertama perintah.getSecondWord: Mengembalikan kata kedua perintah.isUnknown: Mengembalikantruejika kata pertama perintah adalahnull(perintah tidak dikenal).hasSecondWord: Mengembalikantruejika kata kedua perintah tidaknull.
CommandWords
Kelas CommandWords digunakan untuk memvalidasi apakah sebuah string termasuk dalam daftar perintah yang dikenal.
Atribut:
validCommands: Array statis berisi daftar perintah valid, yaitu"go","quit", dan"help".
Metode Utama:
isCommand(String aString):- Mengembalikan
truejika string yang diberikan ada dalamvalidCommands. - Menggunakan
Arrays.asListuntuk memeriksa keberadaan string.
Parser
Kelas Parser digunakan untuk membaca dan memproses input pengguna dalam bentuk perintah teks.
Atribut:
commands: ObjekCommandWordsuntuk memvalidasi kata perintah.reader: ObjekScanneruntuk membaca input dari konsol.
Metode Utama:
getCommand:- Membaca baris input dari pengguna.
- Memisahkan input menjadi dua kata (
word1danword2) menggunakanScanner. - Memvalidasi
word1menggunakanCommandWords: - Jika valid, mengembalikan objek
Commanddengan kata-kata tersebut. - Jika tidak valid, mengembalikan
Commanddengannullsebagai kata pertama (menandakan perintah tidak dikenal).
Room
Kelas Room merepresentasikan sebuah ruangan dalam aplikasi, seperti game berbasis teks, dengan deskripsi dan koneksi ke ruangan lainnya.
Atribut:
description: Deskripsi ruangan.northExit, southExit, eastExit, westExit: Koneksi (keluar) ke ruangan lain di masing-masing arah (utara, selatan, timur, barat).
Metode:
- Konstruktor
Room(String description):- Menginisialisasi deskripsi ruangan.
setExits(Room north, Room east, Room south, Room west):- Menetapkan ruangan tetangga di masing-masing arah jika tidak
null.
- Menetapkan ruangan tetangga di masing-masing arah jika tidak
getDescription():- Mengembalikan deskripsi ruangan
Game
Kelas Game merepresentasikan logika inti dari permainan teks petualangan "World of Zuul", termasuk pengaturan ruangan, navigasi antar-ruangan, dan pengolahan perintah pemain.
Atribut:
parser: Objek untuk membaca dan memproses perintah pemain.currentRoom: Ruangan tempat pemain berada saat ini.
Metode Utama:
createRooms():- Membuat ruangan-ruangan dalam game dengan deskripsi masing-masing.
- Menetapkan koneksi antar-ruangan melalui arah keluar (exits).
- Mengatur ruangan awal sebagai
outside.
play():- Memulai permainan.
- Menampilkan pesan selamat datang.
- Mengolah perintah pemain dalam loop hingga pemain keluar.
processCommand(Command command):- Memproses perintah pemain.
- Mendukung perintah:
help: Menampilkan bantuan.go: Berpindah ke ruangan lain.quit: Keluar dari permainan.
goRoom(Command command):- Mengarahkan pemain ke ruangan lain berdasarkan perintah arah ("north", "east", "south", "west").
- Memberi tahu jika tidak ada pintu ke arah yang diminta.
quit(Command command):- Mengakhiri permainan jika perintah
quitdiberikan tanpa kata tambahan.
- Mengakhiri permainan jika perintah
printWelcome()danprintHelp():- Menampilkan pesan awal dan daftar perintah yang tersedia.







Komentar
Posting Komentar