// © 2025 Naked People Team. All Rights Reserved. #pragma once #include "CoreMinimal.h" #include "GameFramework/Actor.h" #include "NPCTargetLocation.generated.h" class ANPC; UCLASS() class NAKEDDESIRE_API ANPCTargetLocation : public AActor { GENERATED_BODY() public: ANPCTargetLocation(); UFUNCTION(BlueprintCallable) bool TryClaim(ANPC* InClaimant); UFUNCTION(BlueprintPure) bool IsClaimed() const { return Claimant.IsValid(); } UFUNCTION(BlueprintCallable) void Release(ANPC* Requester); private: UPROPERTY() TWeakObjectPtr Claimant = nullptr; };