// © 2024 Long Ly. All rights reserved. Any unauthorized use, reproduction, or distribution of this trademark is strictly prohibited and may result in legal action. #pragma once #include "CoreMinimal.h" #include "UObject/Interface.h" #include "OLSMoveableInterface.generated.h" // This class does not need to be modified. UINTERFACE() class UOLSMoveableInterface : public UInterface { GENERATED_BODY() }; /** * */ class OLSANIMATION_API IOLSMoveableInterface { GENERATED_BODY() // Add interface functions to this class. This is the class that will be inherited to implement this interface. public: virtual class UPawnMovementComponent* GetMovementComponent() const = 0; virtual class UOLSLocomotionComponent* GetLocomotionComponent() const = 0; virtual float GetMaxAcceleration() const = 0; virtual FVector GetCurrentAcceleration() const = 0; virtual EMovementMode GetMovementMode() const = 0; virtual void SetMaxWalkSpeed(const float newMaxWalkSpeed) = 0; };