// © 2025 Naked People Team. All Rights Reserved. #pragma once #include "CoreMinimal.h" #include "GameFramework/Actor.h" #include "NakedDesire/InteractionSystem/InteractionTarget.h" #include "InteractableBase.generated.h" class ANakedDesireCharacter; class UWidgetComponent; UCLASS() class NAKEDDESIRE_API AInteractableBase : public AActor, public IInteractionTarget { GENERATED_BODY() UPROPERTY(EditDefaultsOnly) USceneComponent* RootSceneComponent = nullptr; UPROPERTY(EditDefaultsOnly) USceneComponent* WidgetAnchor = nullptr; UPROPERTY(EditDefaultsOnly) UWidgetComponent* InteractionTrigger = nullptr; UPROPERTY() ANakedDesireCharacter* Player = nullptr; public: AInteractableBase(); protected: virtual void Tick(float DeltaSeconds) override; };