21 virtual void ActivateAbility(
const FGameplayAbilitySpecHandle Handle,
const FGameplayAbilityActorInfo* ActorInfo,
const FGameplayAbilityActivationInfo ActivationInfo,
const FGameplayEventData* TriggerEventData)
override final;
22 virtual const FGameplayTagContainer* GetCooldownTags()
const override;
23 virtual void ApplyCooldown(
const FGameplayAbilitySpecHandle Handle,
const FGameplayAbilityActorInfo* ActorInfo,
const FGameplayAbilityActivationInfo ActivationInfo)
const override;
24 virtual void EndAbility(
const FGameplayAbilitySpecHandle Handle,
const FGameplayAbilityActorInfo* ActorInfo,
const FGameplayAbilityActivationInfo ActivationInfo,
bool bReplicateEndAbility,
bool bWasCancelled)
override;
27 virtual void ApplyCombatData()
override;
28 virtual bool PrepareAttack();
31 virtual bool ShouldSetupHitCheck()
const;
34 bool BeginAttackRotationLock();
35 void EndAttackRotationLock();
36 void SendStateTreeTag(
const FGameplayTag& EventTag)
const;
40 TObjectPtr<UAnimMontage> AttackMontage;
43 FGameplayTag CooldownTag;
46 float CooldownDuration = 0.0f;
49 FGameplayTagContainer TempCooldownTags;
52 TObjectPtr<UCharacterMovementComponentBase> AttackRotationComponent;
54 bool bAttackStarted = false;
55 bool bAttackRotationLocked = false;