From 87959860539b38a57aabe93d3da0fd85f27919eb Mon Sep 17 00:00:00 2001 From: Eneko Nieto Date: Wed, 8 Mar 2023 00:14:29 +0100 Subject: [PATCH] Reset mouse cursor on click. Cancel using item if background clicked. --- .../addons/escoria-ui-return-monkey-island/game.gd | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/gymkhana/addons/escoria-ui-return-monkey-island/game.gd b/gymkhana/addons/escoria-ui-return-monkey-island/game.gd index 54b0984b..a7905843 100644 --- a/gymkhana/addons/escoria-ui-return-monkey-island/game.gd +++ b/gymkhana/addons/escoria-ui-return-monkey-island/game.gd @@ -200,6 +200,11 @@ func _process_input(event: InputEvent, is_default_state: bool) -> bool: ## BACKGROUND ## func click_on_bg(position: Vector2) -> void: + # If we are using an inventory item reset mouse cursor and cancel action + if escoria.action_manager.action_state == ESCActionManager.ACTION_INPUT_STATE.AWAITING_TARGET_ITEM: + Input.set_custom_mouse_cursor(null) + escoria.action_manager.action_state = ESCActionManager.ACTION_INPUT_STATE.AWAITING_VERB_OR_ITEM + if escoria.main.current_scene.player: escoria.action_manager.do( escoria.action_manager.ACTION.BACKGROUND_CLICK, @@ -236,6 +241,9 @@ func element_unfocused() -> void: ## ITEMS ## func click_on_item(item_global_id: String, event: InputEvent, action: String) -> void: + # If we are using an inventory item reset mouse cursor + if escoria.action_manager.action_state == ESCActionManager.ACTION_INPUT_STATE.AWAITING_TARGET_ITEM: + Input.set_custom_mouse_cursor(null) # If we are awaiting input action use inventory actions (change action1 for action3 and action2 for action4) if escoria.action_manager.action_state == ESCActionManager.ACTION_INPUT_STATE.AWAITING_TARGET_ITEM: @@ -412,8 +420,6 @@ func _on_event_done(return_code: int, _event_name: String): # Show tooltips, they were hiddeen while performing action $tooltip_layer/tooltip.show() #$tooltip_layer/tooltip2.show() - # Reset mouse cursor to (perhaps we were using an inventory item) - Input.set_custom_mouse_cursor(null) func _on_MenuButton_pressed() -> void: