// Copyright Epic Games, Inc. All Rights Reserved. #pragma once #include "CoreMinimal.h" #include "Abilities/GameplayAbility.h" #include "Engine/EngineTypes.h" #include "InteractionStatics.generated.h" /** */ UCLASS() class UInteractionStatics : public UBlueprintFunctionLibrary { GENERATED_BODY() public: UInteractionStatics(); public: UFUNCTION(BlueprintCallable) static AActor* GetActorFromInteractableTarget(TScriptInterface<IInteractableTarget> InteractableTarget); UFUNCTION(BlueprintCallable) static void GetInteractableTargetsFromActor(AActor* Actor, TArray<TScriptInterface<IInteractableTarget>>& OutInteractableTargets); static void AppendInteractableTargetsFromOverlapResults(const TArray<FOverlapResult>& OverlapResults, TArray<TScriptInterface<IInteractableTarget>>& OutInteractableTargets); static void AppendInteractableTargetsFromHitResult(const FHitResult& HitResult, TArray<TScriptInterface<IInteractableTarget>>& OutInteractableTargets); };