28 virtual void EndAbility(
const FGameplayAbilitySpecHandle Handle,
const FGameplayAbilityActorInfo* ActorInfo,
const FGameplayAbilityActivationInfo ActivationInfo,
bool bReplicateEndAbility,
bool bWasCancelled)
override;
31 virtual void ApplyCombatData()
override;
41 bool StartStrikePhaseChain(
AMainPlayerCharacter*
Player,
const FGameplayAbilitySpecHandle Handle,
const FGameplayAbilityActorInfo* ActorInfo,
const FGameplayAbilityActivationInfo ActivationInfo);
45 virtual void OnPreparingCompleted();
48 virtual void OnHoldingCompleted();
51 virtual void OnStrikeMoveCompleted();
54 virtual void OnStrikeMotionWarpDelayCompleted();
58 virtual void OnStrikeMontageCompleted();
71 virtual
void OnStrikeMontageStarted();
74 virtual
void SetupStrikeEventListeners();
77 virtual
void OnStrikeCleanup(ACharacter* Character,
bool bWasCancelled);
80 virtual TArray<FName> GetRequiredMontageSections() const;
83 float GetEffectiveHoldingDuration() const;
84 bool PlayHoldingSection(
float DesiredHoldingDuration) const;
85 void SetCurrentWeaponHidden(
bool bHidden) const;
88 FORCEINLINE
float GetStrikeMoveNormalizationFactor(const
float Duration, const
float Distance)
const
91 const float Normalizer = Duration * TotalMoveCurveIntegral;
92 return Normalizer < KINDA_SMALL_NUMBER ? 0.0f : Distance / Normalizer;
97 SetAvatarMeshHidden(
false);
98 SetCurrentWeaponHidden(
false);
99 bCurrentWeaponHiddenBySkill =
false;
135 TObjectPtr<UAnimMontage> SkillActionMontage;
139 TObjectPtr<UAbilityTask_PlayMontageAndWait> ActivePreparingTask;
142 TObjectPtr<UAbilityTask_WaitDelay> ActiveHoldingTask;
148 TObjectPtr<UAbilityTask_WaitDelay> ActiveStrikeMotionWarpDelayTask;
151 FRotator CachedStrikeFacingRotation = FRotator::ZeroRotator;
152 bool bStrikeStarted = false;
153 bool bCurrentWeaponHiddenBySkill = false;
154 float TotalMoveCurveIntegral = 0.0f;
Definition MainPlayerCharacter.h:39