6#include "EnemyGroggyComponent.generated.h"
8class UAbilitySystemComponent;
22UCLASS(ClassGroup=(Custom), meta=(BlueprintSpawnableComponent))
28 virtual
void EndPlay(const EEndPlayReason::Type EndPlayReason) override;
29 virtual
void InitializeBehavior(const
FEnemyExtendedData& EnemyExtendedData, FName RowName) override;
30 virtual
void ResetState() override;
34 void CompleteGroggyRecovery();
36 FORCEINLINE UAnimMontage* GetGroggyMontage()
const {
return GroggyMontage; }
37 FORCEINLINE FName GetGroggyEndSectionName()
const {
return GroggyEndSectionName; }
41 void ClearGroggyState();
43 void SetGroggyValue(
float NewValue);
44 void SetGroggyTagCount(int32 NewCount)
const;
47 FOnGroggyStateChanged OnGroggyStateChanged;
50 float MaxGroggyValue = 100.0f;
52 float GroggyDuration = 5.0f;
54 float DamageTakenMultiplierInGroggy = 1.2f;
60 TObjectPtr<UAnimMontage> GroggyMontage;
62 FName GroggyEndSectionName;
65 TObjectPtr<UAbilitySystemComponent> CachedASC;
68 TObjectPtr<UEnemyAttributeSet> CachedEnemyAttributeSet;
71 FTimerHandle GroggyTimerHandle;
72 FDelegateHandle GroggyStateDelegateHandle;
EEnemyGroggyState
Definition EnemyGroggyComponent.h:14
DECLARE_MULTICAST_DELEGATE_OneParam(FOnGroggyStateChanged, EEnemyGroggyState)
Definition EnemyAttributeSet.h:12
Definition EnemyBehaviorComponent.h:13
Definition CharacterControlData.h:142