// Copyright Epic Games, Inc. All Rights Reserved. #pragma once #include "Containers/Array.h" #include "Engine/OverlapResult.h" #include "Kismet/BlueprintFunctionLibrary.h" #include "UObject/ScriptInterface.h" #include "UObject/UObjectGlobals.h" #include "InteractionStatics.generated.h" class AActor; class IInteractableTarget; class UObject; struct FFrame; struct FHitResult; struct FOverlapResult; /** */ UCLASS() class UInteractionStatics : public UBlueprintFunctionLibrary { GENERATED_BODY() public: UInteractionStatics(); public: UFUNCTION(BlueprintCallable) static AActor* GetActorFromInteractableTarget(TScriptInterface InteractableTarget); UFUNCTION(BlueprintCallable) static void GetInteractableTargetsFromActor(AActor* Actor, TArray>& OutInteractableTargets); static void AppendInteractableTargetsFromOverlapResults(const TArray& OverlapResults, TArray>& OutInteractableTargets); static void AppendInteractableTargetsFromHitResult(const FHitResult& HitResult, TArray>& OutInteractableTargets); };