thegates/app/scripts/debug_log/debug_window.gd
2024-11-21 05:20:31 +04:00

47 lines
937 B
GDScript

extends Node
@export var window: Window
var window_visible
var mouse_mode: int = Input.MOUSE_MODE_VISIBLE
func _ready() -> void:
window_hide()
func _input(event: InputEvent) -> void:
if event.is_action_pressed("open_debug") and not event.is_echo():
if window_visible:
window_hide()
else:
window_show()
func _on_window_window_input(event: InputEvent) -> void:
_input(event)
func _on_window_close_requested() -> void:
window_hide()
func _on_window_focus_exited() -> void:
window_hide()
func window_show() -> void:
window.show()
window_visible = true
if Input.get_mouse_mode() == Input.MOUSE_MODE_CAPTURED:
mouse_mode = Input.MOUSE_MODE_CAPTURED
Input.set_mouse_mode(Input.MOUSE_MODE_VISIBLE)
else:
mouse_mode = Input.MOUSE_MODE_VISIBLE
func window_hide() -> void:
window.hide()
window_visible = false
if mouse_mode == Input.MOUSE_MODE_CAPTURED:
Input.set_mouse_mode(Input.MOUSE_MODE_CAPTURED)