mirror of
https://github.com/thegatesbrowser/thegates.git
synced 2025-08-23 08:17:34 -04:00
47 lines
937 B
GDScript
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)
|