diff --git a/lib/classes/movement_state_receiver.gd b/lib/classes/movement_state_receiver.gd index 9c86db8..8509047 100644 --- a/lib/classes/movement_state_receiver.gd +++ b/lib/classes/movement_state_receiver.gd @@ -47,6 +47,8 @@ func _ready(): request_state_change = funcref(get_node(callable_state_machine), 'change_to_known_state') ## Connect signal to get alerted of state change get_node(callable_state_machine).connect("state_changed", self,"_on_state_change") + ## Get notified when modifiers updated + get_node(callable_state_machine).connect("modifiers_updated",self,"_on_modifiers_updated") ## A reference to the current state machine state current_state = get_node(callable_state_machine).current_state ## A reference to the state machine merged modifiers @@ -139,6 +141,7 @@ func _on_state_change(old_state_name:String, new_state :State): func _on_modifiers_updated(_modifier_type :int, _modifier_action :int, _merged_modifier :StateModifier): ## Get reference (subscribe) to the merged modifier for movement if _merged_modifier is StateModifierMovement: + print("Registered Modifier Movement: ", _merged_modifier.horizontal_speed) modifier = _merged_modifier diff --git a/lib/classes/state_machine.gd b/lib/classes/state_machine.gd index e0fd723..b3238da 100644 --- a/lib/classes/state_machine.gd +++ b/lib/classes/state_machine.gd @@ -58,7 +58,7 @@ func _ready(): func merge_modifiers(): #merged_animation_state_modifiers.reset() for modgroup in merged_modifiers.keys(): - merged_modifiers["StateModifierAnimatedActor"].reset() + merged_modifiers[modgroup].reset() for m in state_modifiers: if m is StateModifierAnimatedActor: if merged_modifiers.has("StateModifierAnimatedActor") == false: