There is movement code happening from the Run state:
You're explicitly asking the parent state to run its physics process from the run state with that line.
That’s how our Run state extends its parent Move state in practice. You don't want to see them as completely separate classes. We don't use GDScript's extend keyword because using nodes instead has practical advantages, but in the case of our Hierarchical State Machine, you can treat Move as a base node that Run builds upon.
Then, when you extend a class, you inherit properties that you can modify freely, like e.g. our Move state’s velocity.
You can directly modify the properties of the Move state from the run script.