cadastery/scripts/globals/cursorer.gd

28 lines
773 B
GDScript

extends Node
func _ready() -> void:
Referencer.main_loaded.connect(_on_referencer_main_loaded)
Referencer.menu_opened.connect(_on_referencer_menu_opened)
Referencer.menu_closed.connect(_on_referencer_menu_closed)
func _unhandled_input(event: InputEvent) -> void:
if event.is_action_pressed("toggle_cursor_capture"):
if Input.mouse_mode == Input.MOUSE_MODE_CAPTURED:
Input.mouse_mode = Input.MOUSE_MODE_VISIBLE
else:
Input.mouse_mode = Input.MOUSE_MODE_CAPTURED
func _on_referencer_main_loaded() -> void:
Input.mouse_mode = Input.MOUSE_MODE_CAPTURED
func _on_referencer_menu_opened(_menu: Menu) -> void:
Input.mouse_mode = Input.MOUSE_MODE_VISIBLE
func _on_referencer_menu_closed(_menu: Menu) -> void:
Input.mouse_mode = Input.MOUSE_MODE_CAPTURED