A clean way to add a dive to my character

Godot Version

Godot 4.5.1

Question

So I’ve been trying for a while to add a dash that functions like the one in MGSV
frAE9U
I tried faking it as a dash that makes you prone but I don’t know how to effectively lock the controls so the player would be stuck in the direction of the dash for the duration of the dive.

Would it be better to have an animation just play and tie the functionality to that?
Set process_input all that stuff doesn’t really make sense to me either even with documentation.

Do you have a state machine for movement? If you had a lunging state or is lunging bool that when set locked your movement inputs and add your velocities for the movement you could probably get it to work.