In the Third Person Combat and Traversal course, Nathan implemented this without any interfaces. He used abstract classes and methods that had to be implemented in each state. That way each state had 3 mandatory methods: Enter, Tick & Exit.
But, in Sam’s implementation, every state implementing LocomotionState has to have the 4 functions: Jump, Fall, Land & Crouch. I got the point why that’s being done. But what happens when we want to add other states? Like Attacking or Dodging? Do we add them to the list of methods in LocomotionState? Or do we add another interface for this?
And also, where can I learn more about this?
Thank you