Keller-Dev
Docs
· Java & Hytale
Übersicht
Neuer Eintrag
Eintrag bearbeiten
Titel *
Kategorie *
Java Core
Java OOP
Java Advanced
Plugin-System
Event-System
UI-System
Sonstiges
Erklärung / Inhalt *
Wenn ein UI-Element (wie eine Dialogbox) aktiv geöffnet ist, müssen Interaktionen mit der Spielwelt konsumiert werden, um unbeabsichtigte Doppel-Aktionen (z. B. sofortiges erneutes Ansprechen eines Objekts oder Weiterschalten beim Schließen) zu vermeiden. Mechanismus: Ein E-Tastendruck schließt im ersten Schritt lediglich ein offenes Modal. Erst wenn dialogBox.isVisible() auf false steht, wird im nächsten Frame wieder die Umkreis-/Raycast-Prüfung auf Objekte in Blickrichtung ausgeführt.
Code-Beispiel (optional)
public static void tryInteract(Player player, InputHandler input, List<InteractableObject> objects, DialogBox dialogBox) { if (!input.consumeJustPressed(KeyEvent.VK_E)) { return; } // Modal schluckt Tastendruck priorisiert if (dialogBox.isVisible()) { dialogBox.hide(); return; } // Normale Objektprüfung davor... }
Referenz-Datei / Projekt (optional)
Referenz-Klasse / Interface (optional)
Quellen-Link (optional)
Tags (durch Komma getrennt)
Änderungen speichern
Abbrechen