22 static UAT_Trace* CreateTask(UGameplayAbility* OwningAbility,
const UCombatDataBase* InCombatData,
float InCombatDataLevel, int32 InCombatHitDataIndex,
bool bInSingleTrace =
false, int32 InMaxHitCountPerTarget = 1,
UDA_MultiHitProfile* InMultiHitProfile =
nullptr,
bool bInHasOverrideTraceTransform =
false,
const FTransform& InOverrideTraceTransform = FTransform::Identity);
24 virtual void Activate()
override;
25 virtual void OnDestroy(
bool bInOwnerFinished)
override;
28 void OnTargetDataReadyCallback(
const FGameplayAbilityTargetDataHandle& DataHandle);
29 void OnFinisherTargetDataReadyCallback(
const FGameplayAbilityTargetDataHandle& DataHandle);
48 float CombatDataLevel = 1.0f;
49 int32 CombatHitDataIndex = 1;
50 ECollisionChannel TaskTraceChannel = ECC_GameTraceChannel1;
51 bool bSingleTrace = false;
52 bool bHasOverrideTraceTransform = false;
53 int32 TaskMaxHitCountPerTarget = 1;
54 FTransform OverrideTraceTransform = FTransform::Identity;
56 FDelegateHandle FinisherDelegateHandle;
DECLARE_DYNAMIC_MULTICAST_DELEGATE_ThreeParams(FTraceResultDelegate, const FGameplayAbilityTargetDataHandle &, TargetDataHandle, float, CombatDataLevel, int32, CombatHitDataIndex)