43 lines
1.2 KiB
C++
43 lines
1.2 KiB
C++
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
|
|
#pragma once
|
|
|
|
#include "Abilities/GameplayAbilityTargetTypes.h"
|
|
|
|
#include "LyraGameplayAbilityTargetData_SingleTargetHit.generated.h"
|
|
|
|
|
|
/** Game-specific additions to SingleTargetHit tracking */
|
|
USTRUCT()
|
|
struct FLyraGameplayAbilityTargetData_SingleTargetHit : public FGameplayAbilityTargetData_SingleTargetHit
|
|
{
|
|
GENERATED_BODY()
|
|
|
|
FLyraGameplayAbilityTargetData_SingleTargetHit()
|
|
: CartridgeID(-1)
|
|
{ }
|
|
|
|
virtual void AddTargetDataToContext(FGameplayEffectContextHandle& Context, bool bIncludeActorArray) const override;
|
|
|
|
/** ID to allow the identification of multiple bullets that were part of the same cartridge */
|
|
UPROPERTY()
|
|
int32 CartridgeID;
|
|
|
|
bool NetSerialize(FArchive& Ar, class UPackageMap* Map, bool& bOutSuccess);
|
|
|
|
virtual UScriptStruct* GetScriptStruct() const override
|
|
{
|
|
return FLyraGameplayAbilityTargetData_SingleTargetHit::StaticStruct();
|
|
}
|
|
};
|
|
|
|
template<>
|
|
struct TStructOpsTypeTraits<FLyraGameplayAbilityTargetData_SingleTargetHit> : public TStructOpsTypeTraitsBase2<FLyraGameplayAbilityTargetData_SingleTargetHit>
|
|
{
|
|
enum
|
|
{
|
|
WithNetSerializer = true // For now this is REQUIRED for FGameplayAbilityTargetDataHandle net serialization to work
|
|
};
|
|
};
|
|
|