diff options
Diffstat (limited to 'addons/escoria-ui-keyboard-9verbs/verbs_menu.gd')
| -rw-r--r-- | addons/escoria-ui-keyboard-9verbs/verbs_menu.gd | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/addons/escoria-ui-keyboard-9verbs/verbs_menu.gd b/addons/escoria-ui-keyboard-9verbs/verbs_menu.gd new file mode 100644 index 0000000..22c417c --- /dev/null +++ b/addons/escoria-ui-keyboard-9verbs/verbs_menu.gd @@ -0,0 +1,32 @@ +extends Control + +""" +This script is out of Escoria's scope. It controls the UI reaction to an +UI event (eg right click) to change the cursor accordingly. +""" + +var selected_action + +func _ready(): + for but in get_children(): + but.connect("pressed", Callable(self, "on_action_selected").bind(but.name)) + but.toggle_mode = true + +func on_action_selected(action: String): + if escoria.inputs_manager.input_mode != escoria.inputs_manager.INPUT_ALL: + unselect_actions() + return + + escoria.action_manager.set_current_action(action) + + for but in get_children(): + but.set_pressed(but.get_name() == action) + +func unselect_actions(): + for but in get_children(): + but.set_pressed(false) + +func set_by_name(action_name: String): + selected_action = action_name + for but in get_children(): + but.set_pressed(but.get_name() == action_name) |
