Files
PHY/Plugins/GCS/Source/GenericCombatSystem/Public/Targeting/GCS_TargetingFunctionLibrary.h
2026-03-03 01:23:02 +08:00

60 lines
2.5 KiB
C++
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
// Copyright 2025 https://yuewu.dev/en All Rights Reserved.
#pragma once
#include "CoreMinimal.h"
#include "Abilities/GameplayAbilityTargetTypes.h"
#include "Kismet/BlueprintFunctionLibrary.h"
#include "Types/TargetingSystemTypes.h"
#include "GCS_TargetingFunctionLibrary.generated.h"
/**
* Extended library for targeting system utilities.
* 目标系统实用程序的扩展库。
*/
UCLASS()
class GENERICCOMBATSYSTEM_API UGCS_TargetingFunctionLibrary : public UBlueprintFunctionLibrary
{
GENERATED_BODY()
public:
/**
* Gets the targeting source context for a targeting request handle.
* 获取目标请求句柄的目标源上下文。
* @param TargetingHandle The targeting request handle. 目标请求句柄。
* @return The targeting source context. 目标源上下文。
*/
UFUNCTION(BlueprintCallable, BlueprintPure, Category = "GCS|Targeting System | Targeting Types")
static FTargetingSourceContext GetTargetingSourceContext(FTargetingRequestHandle TargetingHandle);
UFUNCTION(BlueprintCallable, BlueprintPure, Category = "GCS|Targeting System | Targeting Types")
static FString GetTargetingSourceContextDebugString(FTargetingRequestHandle TargetingHandle);
/**
* Gets the actor targets from a targeting request handle.
* 从目标请求句柄获取Actor目标。
* @param TargetingHandle The targeting request handle. 目标请求句柄。
* @param Targets The actor targets (output). Actor目标输出
*/
UFUNCTION(BlueprintCallable, BlueprintPure, Category = "GCS|Targeting System | Targeting Results")
static void GetTargetingResultsActors(FTargetingRequestHandle TargetingHandle, TArray<AActor*>& Targets);
/**
* Gets the hit results for a targeting handle.
* 获取目标句柄的命中结果。
* @param TargetingHandle The targeting request handle. 目标请求句柄。
* @param OutTargets The hit results (output). 命中结果(输出)。
*/
UFUNCTION(BlueprintCallable, BlueprintPure, Category = "GCS|Targeting System | Targeting Results")
static void GetTargetingResults(FTargetingRequestHandle TargetingHandle, TArray<FHitResult>& OutTargets);
/**
* Converts targeting location info to a source context.
* 将目标位置信息转换为源上下文。
* @param LocationInfo The targeting location info. 目标位置信息。
* @return The targeting source context. 目标源上下文。
*/
UFUNCTION(BlueprintCallable, BlueprintPure, Category = "GCS|Targeting System")
static FTargetingSourceContext ConvertTargetingLocationInfoToSourceContext(FGameplayAbilityTargetingLocationInfo LocationInfo);
};