Keller-Dev Docs · Java & Hytale

Java Core

Testen und Abfangen illegaler Zustandsübergänge zur Laufzeit

Beim Ausführen von Aktionen, die State-Machine-Übergänge anstoßen, müssen Ausnahmen gezielt abgefangen werden, damit unerwartete Eingaben nicht den gesamten Game-Loop-Thread abstürzen lassen. Praxis in der Game-Loop: In Test- oder Debug-Phasen aufgerufene Aktionen werden mit try-catch-Blöcken abgesichert. Illegal gesetzte Befehle lösen eine konsolenbasierte Rückmeldung aus, ohne den Spielablauf zu unterbrechen.

Referenz: Datei 1. Spielprojekt · Klasse GameLoop
// Beispiel: Debug-Taste löst Statusübergang aus
if (gamePanel.getInputHandler().consumeJustPressed(KeyEvent.VK_C)) {
    try {
        gamePanel.getTestQuest().complete();
        System.out.println("Quest abgeschlossen: " + gamePanel.getTestQuest().getTitle());
    } catch (IllegalStateException e) {
        System.out.println("Übergang abgelehnt: " + e.getMessage());
    }
}
#game-loop #exception-handling #debug #state-machine #input
Bearbeiten