Advertisement
Guest User

GASAttributeSet.h

a guest
Mar 11th, 2021
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 5.10 KB | None | 0 0
  1. #pragma once
  2.  
  3. #include "CoreMinimal.h"
  4. #include "AttributeSet.h"
  5. #include "AbilitySystemComponent.h"
  6. #include "GASAttributeSet.generated.h"
  7.  
  8. //Uses macros from AttributeSet.h
  9. #define ATTRIBUTE_ACCESSORS(ClassName, PropertyName) \
  10.     GAMEPLAYATTRIBUTE_PROPERTY_GETTER(ClassName, PropertyName) \
  11.     GAMEPLAYATTRIBUTE_VALUE_GETTER(PropertyName) \
  12.     GAMEPLAYATTRIBUTE_VALUE_SETTER(PropertyName) \
  13.     GAMEPLAYATTRIBUTE_VALUE_INITTER(PropertyName)
  14.  
  15. /**
  16.  *
  17.  */
  18. UCLASS()
  19. class GAS_API UGASAttributeSet : public UAttributeSet
  20. {
  21.     GENERATED_BODY()
  22.  
  23. public:
  24.  
  25.     UGASAttributeSet();
  26.  
  27.     virtual void GetLifetimeReplicatedProps(TArray<FLifetimeProperty>& OutLifetimeProps) const override;
  28.  
  29.     UPROPERTY(BlueprintReadOnly, Category = "Attributes", ReplicatedUsing = OnRep_Health)
  30.     FGameplayAttributeData Health;
  31.     ATTRIBUTE_ACCESSORS(UGASAttributeSet, Health);
  32.  
  33.     UFUNCTION()
  34.     virtual void OnRep_Health(const FGameplayAttributeData& OldHealth);
  35.  
  36.     UPROPERTY(BlueprintReadOnly, Category = "Attributes", ReplicatedUsing = OnRep_HealthMax)
  37.         FGameplayAttributeData HealthMax;
  38.     ATTRIBUTE_ACCESSORS(UGASAttributeSet, HealthMax);
  39.  
  40.     UFUNCTION()
  41.         virtual void OnRep_HealthMax(const FGameplayAttributeData& OldHealthMax);
  42.  
  43.     UPROPERTY(BlueprintReadOnly, Category = "Attributes", ReplicatedUsing = OnRep_HealthRecoveryRate)
  44.     FGameplayAttributeData HealthRecoveryRate;
  45.     ATTRIBUTE_ACCESSORS(UGASAttributeSet, HealthRecoveryRate);
  46.  
  47.     UFUNCTION()
  48.     virtual void OnRep_HealthRecoveryRate(const FGameplayAttributeData& OldHealthRecoveryRate);
  49.  
  50.     UPROPERTY(BlueprintReadOnly, Category = "Attributes", ReplicatedUsing = OnRep_HealthRecoveryDelay)
  51.     FGameplayAttributeData HealthRecoveryDelay;
  52.     ATTRIBUTE_ACCESSORS(UGASAttributeSet, HealthRecoveryDelay);
  53.  
  54.     UFUNCTION()
  55.     virtual void OnRep_HealthRecoveryDelay(const FGameplayAttributeData& OldHealthRecoveryDelay);
  56.  
  57.     UPROPERTY(BlueprintReadOnly, Category = "Attributes", ReplicatedUsing = OnRep_Armour)
  58.         FGameplayAttributeData Armour;
  59.     ATTRIBUTE_ACCESSORS(UGASAttributeSet, Armour);
  60.  
  61.     UFUNCTION()
  62.         virtual void OnRep_Armour(const FGameplayAttributeData& OldArmour);
  63.  
  64.     UPROPERTY(BlueprintReadOnly, Category = "Attributes", ReplicatedUsing = OnRep_ArmourMax)
  65.         FGameplayAttributeData ArmourMax;
  66.     ATTRIBUTE_ACCESSORS(UGASAttributeSet, ArmourMax);
  67.  
  68.     UFUNCTION()
  69.         virtual void OnRep_ArmourMax(const FGameplayAttributeData& OldArmourMax);
  70.  
  71.     UPROPERTY(BlueprintReadOnly, Category = "Attributes", ReplicatedUsing = OnRep_Shield)
  72.         FGameplayAttributeData Shield;
  73.     ATTRIBUTE_ACCESSORS(UGASAttributeSet, Shield);
  74.  
  75.     UFUNCTION()
  76.         virtual void OnRep_Shield(const FGameplayAttributeData& OldShield);
  77.  
  78.     UPROPERTY(BlueprintReadOnly, Category = "Attributes", ReplicatedUsing = OnRep_ShieldMax)
  79.         FGameplayAttributeData ShieldMax;
  80.     ATTRIBUTE_ACCESSORS(UGASAttributeSet, ShieldMax);
  81.  
  82.     UFUNCTION()
  83.         virtual void OnRep_ShieldMax(const FGameplayAttributeData& OldShieldMax);
  84.  
  85.     UPROPERTY(BlueprintReadOnly, Category = "Attributes", ReplicatedUsing = OnRep_WalkSpeed)
  86.     FGameplayAttributeData WalkSpeed;
  87.     ATTRIBUTE_ACCESSORS(UGASAttributeSet, WalkSpeed);
  88.  
  89.     UFUNCTION()
  90.     virtual void OnRep_WalkSpeed(const FGameplayAttributeData& OldWalkSpeed);
  91.  
  92.     UPROPERTY(BlueprintReadOnly, Category = "Attributes", ReplicatedUsing = OnRep_FlySpeed)
  93.     FGameplayAttributeData FlySpeed;
  94.     ATTRIBUTE_ACCESSORS(UGASAttributeSet, FlySpeed);
  95.  
  96.     UFUNCTION()
  97.     virtual void OnRep_FlySpeed(const FGameplayAttributeData& OldFlySpeed);
  98.  
  99.     UPROPERTY(BlueprintReadOnly, Category = "Attributes", ReplicatedUsing = OnRep_JumpVelocity)
  100.     FGameplayAttributeData JumpVelocity;
  101.     ATTRIBUTE_ACCESSORS(UGASAttributeSet, JumpVelocity);
  102.  
  103.     UFUNCTION()
  104.     virtual void OnRep_JumpVelocity(const FGameplayAttributeData& OldJumpVelocity);
  105.  
  106.  
  107.     UPROPERTY(BlueprintReadOnly, Category = "Attributes", ReplicatedUsing = OnRep_MeleePower)
  108.     FGameplayAttributeData MeleePower;
  109.     ATTRIBUTE_ACCESSORS(UGASAttributeSet, MeleePower);
  110.  
  111.     UFUNCTION()
  112.     virtual void OnRep_MeleePower(const FGameplayAttributeData& OldMeleePower);
  113.  
  114.     UPROPERTY(BlueprintReadOnly, Category = "Attributes", ReplicatedUsing = OnRep_ProjectilePower)
  115.         FGameplayAttributeData ProjectilePower;
  116.     ATTRIBUTE_ACCESSORS(UGASAttributeSet, ProjectilePower);
  117.  
  118.     UFUNCTION()
  119.         virtual void OnRep_ProjectilePower(const FGameplayAttributeData& OldProjectilePower);
  120.  
  121.     UPROPERTY(BlueprintReadOnly, Category = "Attributes", ReplicatedUsing = OnRep_AbilityPower)
  122.         FGameplayAttributeData AbilityPower;
  123.     ATTRIBUTE_ACCESSORS(UGASAttributeSet, AbilityPower);
  124.  
  125.     UFUNCTION()
  126.         virtual void OnRep_AbilityPower(const FGameplayAttributeData& OldAbilityPower);
  127.  
  128.     UPROPERTY(BlueprintReadOnly, Category = "Attributes", ReplicatedUsing = OnRep_ExplosionPower)
  129.         FGameplayAttributeData ExplosionPower;
  130.     ATTRIBUTE_ACCESSORS(UGASAttributeSet, ExplosionPower);
  131.  
  132.     UFUNCTION()
  133.         virtual void OnRep_ExplosionPower(const FGameplayAttributeData& OldExplosionPower);
  134.  
  135.     UPROPERTY(BlueprintReadOnly, Category = "Attributes", ReplicatedUsing = OnRep_CritPower)
  136.         FGameplayAttributeData CritPower;
  137.     ATTRIBUTE_ACCESSORS(UGASAttributeSet, CritPower);
  138.  
  139.     UFUNCTION()
  140.         virtual void OnRep_CritPower(const FGameplayAttributeData& OldCritPower);
  141. };
  142.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement