36 lines
847 B
GDScript3
36 lines
847 B
GDScript3
|
|
extends "res://ui/menus/ModalMenu.gd"
|
||
|
|
|
||
|
|
signal formation_changed
|
||
|
|
signal reset_requested
|
||
|
|
|
||
|
|
@onready var editor: Control = $Editor
|
||
|
|
@onready var reset_button: Control = $ResetButton
|
||
|
|
|
||
|
|
|
||
|
|
func _ready() -> void:
|
||
|
|
super._ready()
|
||
|
|
reset_button.pressed.connect(func(): reset_requested.emit())
|
||
|
|
editor.formation_changed.connect(func(): formation_changed.emit())
|
||
|
|
|
||
|
|
|
||
|
|
func open_menu() -> void:
|
||
|
|
super.open_menu()
|
||
|
|
editor.queue_redraw()
|
||
|
|
|
||
|
|
|
||
|
|
func redraw() -> void:
|
||
|
|
editor.queue_redraw()
|
||
|
|
|
||
|
|
|
||
|
|
func handle_unhandled_input(event: InputEvent) -> bool:
|
||
|
|
if not visible:
|
||
|
|
return false
|
||
|
|
if event is InputEventScreenTouch:
|
||
|
|
editor.handle_touch(event)
|
||
|
|
elif event is InputEventScreenDrag:
|
||
|
|
editor.handle_drag(event)
|
||
|
|
elif event is InputEventMouseButton:
|
||
|
|
editor.handle_mouse_button(event)
|
||
|
|
elif event is InputEventMouseMotion:
|
||
|
|
editor.handle_mouse_motion(event)
|
||
|
|
return true
|