more changes to the dialog manager
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
extends "res://addons/escoria-dialog-simple/patterns/state_machine/state_machine.gd"
|
||||
extends "res://gymkhana/addons/escoria-ui-return-monkey-island-dialog-simple/patterns/state_machine/state_machine.gd"
|
||||
|
||||
|
||||
func _init():
|
||||
@@ -14,14 +14,14 @@ func _init():
|
||||
# Creates the states for this state machine.
|
||||
func _create_states() -> void:
|
||||
states_map = {
|
||||
"idle": preload("res://addons/escoria-dialog-simple/states/dialog_idle.gd").new(),
|
||||
"say": preload("res://addons/escoria-dialog-simple/states/dialog_say.gd").new(),
|
||||
"say_fast": preload("res://addons/escoria-dialog-simple/states/dialog_say_fast.gd").new(),
|
||||
"say_finish": preload("res://addons/escoria-dialog-simple/states/dialog_say_finish.gd").new(),
|
||||
"visible": preload("res://addons/escoria-dialog-simple/states/dialog_visible.gd").new(),
|
||||
"finish": preload("res://addons/escoria-dialog-simple/states/dialog_finish.gd").new(),
|
||||
"interrupt": preload("res://addons/escoria-dialog-simple/states/dialog_interrupt.gd").new(),
|
||||
"choices": preload("res://addons/escoria-dialog-simple/states/dialog_choices.gd").new(),
|
||||
"idle": preload("res://gymkhana/addons/escoria-ui-return-monkey-island-dialog-simple/states/dialog_idle.gd").new(),
|
||||
"say": preload("res://gymkhana/addons/escoria-ui-return-monkey-island-dialog-simple/states/dialog_say.gd").new(),
|
||||
"say_fast": preload("res://gymkhana/addons/escoria-ui-return-monkey-island-dialog-simple/states/dialog_say_fast.gd").new(),
|
||||
"say_finish": preload("res://gymkhana/addons/escoria-ui-return-monkey-island-dialog-simple/states/dialog_say_finish.gd").new(),
|
||||
"visible": preload("res://gymkhana/addons/escoria-ui-return-monkey-island-dialog-simple/states/dialog_visible.gd").new(),
|
||||
"finish": preload("res://gymkhana/addons/escoria-ui-return-monkey-island-dialog-simple/states/dialog_finish.gd").new(),
|
||||
"interrupt": preload("res://gymkhana/addons/escoria-ui-return-monkey-island-dialog-simple/states/dialog_interrupt.gd").new(),
|
||||
"choices": preload("res://gymkhana/addons/escoria-ui-return-monkey-island-dialog-simple/states/dialog_choices.gd").new(),
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -36,7 +36,7 @@ func initialize(dialog_manager: ESCDialogManager, character: String, text: Strin
|
||||
_text = text
|
||||
_type = type
|
||||
_stop_talking_animation_on_option = \
|
||||
ESCProjectSettingsManager.get_setting(SimpleDialogSettings.STOP_TALKING_ANIMATION_ON)
|
||||
ESCProjectSettingsManager.get_setting(RTMISimpleDialogSettings.STOP_TALKING_ANIMATION_ON)
|
||||
|
||||
|
||||
func handle_input(_event):
|
||||
@@ -45,20 +45,20 @@ func handle_input(_event):
|
||||
escoria.inputs_manager.INPUT_NONE and \
|
||||
_dialog_manager != null:
|
||||
|
||||
var left_click_action = ESCProjectSettingsManager.get_setting(SimpleDialogSettings.LEFT_CLICK_ACTION)
|
||||
var left_click_action = ESCProjectSettingsManager.get_setting(RTMISimpleDialogSettings.LEFT_CLICK_ACTION)
|
||||
|
||||
_handle_left_click_action(left_click_action)
|
||||
|
||||
|
||||
func _handle_left_click_action(left_click_action: String) -> void:
|
||||
match left_click_action:
|
||||
SimpleDialogSettings.LEFT_CLICK_ACTION_SPEED_UP:
|
||||
RTMISimpleDialogSettings.LEFT_CLICK_ACTION_SPEED_UP:
|
||||
if _dialog_manager.is_connected("say_visible", self, "_on_say_visible"):
|
||||
_dialog_manager.disconnect("say_visible", self, "_on_say_visible")
|
||||
|
||||
escoria.logger.trace(self, "Dialog State Machine: 'say' -> 'say_fast'")
|
||||
emit_signal("finished", "say_fast")
|
||||
SimpleDialogSettings.LEFT_CLICK_ACTION_INSTANT_FINISH:
|
||||
RTMISimpleDialogSettings.LEFT_CLICK_ACTION_INSTANT_FINISH:
|
||||
if _dialog_manager.is_connected("say_visible", self, "_on_say_visible"):
|
||||
_dialog_manager.disconnect("say_visible", self, "_on_say_visible")
|
||||
|
||||
@@ -100,7 +100,7 @@ func enter():
|
||||
as ESCSpeechPlayer
|
||||
).set_state(_speech_resource)
|
||||
|
||||
if _stop_talking_animation_on_option == SimpleDialogSettings.STOP_TALKING_ANIMATION_ON_END_OF_AUDIO:
|
||||
if _stop_talking_animation_on_option == RTMISimpleDialogSettings.STOP_TALKING_ANIMATION_ON_END_OF_AUDIO:
|
||||
if not (
|
||||
escoria.object_manager.get_object(escoria.object_manager.SPEECH).node\
|
||||
as ESCSpeechPlayer
|
||||
|
||||
Reference in New Issue
Block a user