w.collision_mask = player.collision_mask
+func set_hitbox_monitoring(b: bool):
+ hitbox.monitoring = b
+
+
func assemble_character_states():
for node in $States.get_children():
if node is State:
current_state.on_enter_state()
player.state_name = current_state.name
+ # reset all stateful information
+ animator.play(&"RESET")
+ animator.advance(0)
+
+ # connect signals and play state's animation
animator.animation_started.connect(current_state._when_animation_started)
animator.animation_finished.connect(current_state._when_animation_finished)
animator.play_section(current_state.animation_name, 0.0, -1, -1, current_state.animation_speed_scale)