diff --git a/Content/Characters/_Shared_/BP_Character.uasset b/Content/Characters/_Shared_/BP_Character.uasset index 7291d0f..b5ec63b 100644 Binary files a/Content/Characters/_Shared_/BP_Character.uasset and b/Content/Characters/_Shared_/BP_Character.uasset differ diff --git a/Source/CogSample/CogSampleAttributeSet_Ability_Blast.cpp b/Source/CogSample/CogSampleAttributeSet_Ability_Blast.cpp new file mode 100644 index 0000000..d76a28a --- /dev/null +++ b/Source/CogSample/CogSampleAttributeSet_Ability_Blast.cpp @@ -0,0 +1,22 @@ +#include "CogSampleAttributeSet_Ability_Blast.h" + +#include "Net/Core/PushModel/PushModel.h" +#include "Net/UnrealNetwork.h" + +//-------------------------------------------------------------------------------------------------------------------------- +UCogSampleAttributeSet_Ability_Blast::UCogSampleAttributeSet_Ability_Blast() +{ +} + +//-------------------------------------------------------------------------------------------------------------------------- +void UCogSampleAttributeSet_Ability_Blast::GetLifetimeReplicatedProps(TArray& OutLifetimeProps) const +{ + Super::GetLifetimeReplicatedProps(OutLifetimeProps); + + FDoRepLifetimeParams Params; + Params.bIsPushBased = true; + Params.RepNotifyCondition = REPNOTIFY_Always; + + DOREPLIFETIME_WITH_PARAMS_FAST(UCogSampleAttributeSet_Ability_Blast, Cooldown, Params); + DOREPLIFETIME_WITH_PARAMS_FAST(UCogSampleAttributeSet_Ability_Blast, Cost, Params); +} diff --git a/Source/CogSample/CogSampleAttributeSet_Ability_Blast.h b/Source/CogSample/CogSampleAttributeSet_Ability_Blast.h new file mode 100644 index 0000000..9df7ef0 --- /dev/null +++ b/Source/CogSample/CogSampleAttributeSet_Ability_Blast.h @@ -0,0 +1,31 @@ +#pragma once + +#include "CoreMinimal.h" +#include "AttributeSet.h" +#include "AbilitySystemComponent.h" +#include "CogSampleFunctionLibrary_Gameplay.h" +#include "CogSampleAttributeSet_Ability_Blast.generated.h" + +UCLASS() +class UCogSampleAttributeSet_Ability_Blast : public UAttributeSet +{ + GENERATED_BODY() + +public: + + UCogSampleAttributeSet_Ability_Blast(); + +protected: + + UPROPERTY(BlueprintReadOnly, Replicated, Meta = (AllowPrivateAccess = true)) + FGameplayAttributeData Cooldown; + + UPROPERTY(BlueprintReadOnly, Replicated, Meta = (AllowPrivateAccess = true)) + FGameplayAttributeData Cost; + + +public: + ATTRIBUTE_ACCESSORS(UCogSampleAttributeSet_Ability_Blast, Cooldown); + ATTRIBUTE_ACCESSORS(UCogSampleAttributeSet_Ability_Blast, Cost); +}; + diff --git a/Source/CogSample/CogSampleAttributeSet_Ability_Shield.cpp b/Source/CogSample/CogSampleAttributeSet_Ability_Shield.cpp new file mode 100644 index 0000000..fe43433 --- /dev/null +++ b/Source/CogSample/CogSampleAttributeSet_Ability_Shield.cpp @@ -0,0 +1,22 @@ +#include "CogSampleAttributeSet_Ability_Shield.h" + +#include "Net/Core/PushModel/PushModel.h" +#include "Net/UnrealNetwork.h" + +//-------------------------------------------------------------------------------------------------------------------------- +UCogSampleAttributeSet_Ability_Shield::UCogSampleAttributeSet_Ability_Shield() +{ +} + +//-------------------------------------------------------------------------------------------------------------------------- +void UCogSampleAttributeSet_Ability_Shield::GetLifetimeReplicatedProps(TArray& OutLifetimeProps) const +{ + Super::GetLifetimeReplicatedProps(OutLifetimeProps); + + FDoRepLifetimeParams Params; + Params.bIsPushBased = true; + Params.RepNotifyCondition = REPNOTIFY_Always; + + DOREPLIFETIME_WITH_PARAMS_FAST(UCogSampleAttributeSet_Ability_Shield, Cooldown, Params); + DOREPLIFETIME_WITH_PARAMS_FAST(UCogSampleAttributeSet_Ability_Shield, Cost, Params); +} diff --git a/Source/CogSample/CogSampleAttributeSet_Ability_Shield.h b/Source/CogSample/CogSampleAttributeSet_Ability_Shield.h new file mode 100644 index 0000000..f61b08c --- /dev/null +++ b/Source/CogSample/CogSampleAttributeSet_Ability_Shield.h @@ -0,0 +1,31 @@ +#pragma once + +#include "CoreMinimal.h" +#include "AttributeSet.h" +#include "AbilitySystemComponent.h" +#include "CogSampleFunctionLibrary_Gameplay.h" +#include "CogSampleAttributeSet_Ability_Shield.generated.h" + +UCLASS() +class UCogSampleAttributeSet_Ability_Shield : public UAttributeSet +{ + GENERATED_BODY() + +public: + + UCogSampleAttributeSet_Ability_Shield(); + +private: + + UPROPERTY(BlueprintReadOnly, Replicated, Meta = (AllowPrivateAccess = true)) + FGameplayAttributeData Cooldown; + + UPROPERTY(BlueprintReadOnly, Replicated, Meta = (AllowPrivateAccess = true)) + FGameplayAttributeData Cost; + + +public: + ATTRIBUTE_ACCESSORS(UCogSampleAttributeSet_Ability_Shield, Cooldown); + ATTRIBUTE_ACCESSORS(UCogSampleAttributeSet_Ability_Shield, Cost); +}; +