Files
PHY/Plugins/GCS/Source/GenericGameplayAbilities/Public/Globals/GGA_GameplayAbilityTargetData_Payload.h
2026-03-03 01:23:02 +08:00

59 lines
1.4 KiB
C++

// Copyright 2025 https://yuewu.dev/en All Rights Reserved.
#pragma once
#include "CoreMinimal.h"
#include "StructUtils/InstancedStruct.h"
#include "Abilities/GameplayAbilityTargetTypes.h"
#include "GGA_GameplayAbilityTargetData_Payload.generated.h"
/**
*
*/
USTRUCT(BlueprintType)
struct GENERICGAMEPLAYABILITIES_API FGGA_GameplayAbilityTargetData_Payload : public FGameplayAbilityTargetData
{
GENERATED_BODY()
virtual ~FGGA_GameplayAbilityTargetData_Payload() override
{
}
FGGA_GameplayAbilityTargetData_Payload()
{
};
FGGA_GameplayAbilityTargetData_Payload(const FInstancedStruct& InPayload)
: Payload(InPayload)
{
}
virtual UScriptStruct* GetScriptStruct() const override
{
return FGGA_GameplayAbilityTargetData_Payload::StaticStruct();
}
virtual FString ToString() const override
{
return TEXT("FGGA_GameplayAbilityTargetData_Payload");
}
UPROPERTY(BlueprintReadWrite, EditAnywhere, Category = Targeting)
FInstancedStruct Payload;
bool NetSerialize(FArchive& Ar, class UPackageMap* Map, bool& bOutSuccess)
{
return Payload.NetSerialize(Ar, Map, bOutSuccess);
};
};
template <>
struct TStructOpsTypeTraits<FGGA_GameplayAbilityTargetData_Payload> : public TStructOpsTypeTraitsBase2<FGGA_GameplayAbilityTargetData_Payload>
{
enum
{
WithNetSerializer = true, // For now this is REQUIRED for FGameplayAbilityTargetDataHandle net serialization to work
};
};