Class GameLogger
java.lang.Object
com.mycompany.extractionshootergui.GameLogger
Kelas pencatat log (logger) global dengan pola desain Singleton.
Kelas ini menangkap seluruh pesan aktivitas permainan dan mendistribusikannya ke konsol
standar (System.out) serta ke seluruh listener antarmuka pengguna grafis (GUI) yang terdaftar.
Dengan pendekatan ini, komponen GUI dan model logika permainan tetap terpisah (decoupled).
- Version:
- 1.0
- Author:
- UnggulWindows
-
Method Summary
Modifier and TypeMethodDescriptionvoidaddListener(Consumer<String> listener) Mendaftarkan listener baru yang akan dipanggil setiap kali ada pesan log baru.static GameLoggerMengambil satu-satunya instansiasi (instance) dariGameLogger.voidMencatat pesan log baru ke konsol dan menyiarkannya ke seluruh listener yang aktif.voidMenghapus seluruh listener yang sedang terdaftar pada logger.
-
Method Details
-
getInstance
Mengambil satu-satunya instansiasi (instance) dariGameLogger. Jika belum pernah dibuat, instansiasi baru akan dibentuk (lazy initialization).- Returns:
- instansiasi tunggal
GameLogger.
-
addListener
-
removeAllListeners
public void removeAllListeners()Menghapus seluruh listener yang sedang terdaftar pada logger. Berguna saat mereset game atau beralih tampilan layar. -
log
Mencatat pesan log baru ke konsol dan menyiarkannya ke seluruh listener yang aktif.- Parameters:
message- teks pesan aktivitas permainan yang ingin dicatat.
-