Änderung: Hinzufügen von Refuel-Logik und Verbesserung der Dialoginteraktion im Taxi-Spiel
Änderungen: - Implementierung der Logik für das Tanken, einschließlich Überprüfung der Bedingungen und Steuerung des Tankvorgangs. - Einführung von Event-Listener für die Enter-Taste zur Schließung des Dialogs. - Verbesserung der Crash-Logik bei leerem Tank und Anpassung der Kollisionserkennung. Diese Anpassungen erhöhen die Spielmechanik und Benutzerinteraktion, indem sie das Tanken und die Dialogsteuerung optimieren.
This commit is contained in:
@@ -67,14 +67,27 @@ export default {
|
||||
this.parameters = parameters;
|
||||
this.onClose = onClose;
|
||||
this.$refs.dialog.open();
|
||||
// Event Listener für Enter-Taste hinzufügen
|
||||
this.$nextTick(() => {
|
||||
document.addEventListener('keydown', this.handleKeyDown);
|
||||
});
|
||||
},
|
||||
close() {
|
||||
this.$refs.dialog.close();
|
||||
// Event Listener entfernen
|
||||
document.removeEventListener('keydown', this.handleKeyDown);
|
||||
// Rufe Callback auf, wenn vorhanden
|
||||
if (this.onClose && typeof this.onClose === 'function') {
|
||||
this.onClose();
|
||||
}
|
||||
},
|
||||
handleKeyDown(event) {
|
||||
// Schließe Dialog bei Enter-Taste
|
||||
if (event.key === 'Enter' || event.keyCode === 13) {
|
||||
event.preventDefault();
|
||||
this.close();
|
||||
}
|
||||
},
|
||||
interpolateParameters(text) {
|
||||
// Ersetze {key} Platzhalter mit den entsprechenden Werten
|
||||
let result = text;
|
||||
@@ -93,6 +106,10 @@ export default {
|
||||
console.log('Final result:', result);
|
||||
return result;
|
||||
}
|
||||
},
|
||||
beforeDestroy() {
|
||||
// Stelle sicher, dass Event Listener entfernt wird
|
||||
document.removeEventListener('keydown', this.handleKeyDown);
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
Reference in New Issue
Block a user