//Called by unity (sendMessage)
 private void OnMovement(InputAction.CallbackContext value)
 {
     InitControllerType(value);
     movement = value.ReadValue <Vector2>();
     machineState?.Move(movement, movementSpeed);
 }