80{
81 if (ACharacter* Character = Cast<ACharacter>(GetAvatarActorFromActorInfo()))
82 {
83 if (Character->GetCharacterMovement()->GetLastInputVector().IsNearlyZero() == false)
84 {
85
86 EndAbility(CurrentSpecHandle, CurrentActorInfo, CurrentActivationInfo,
true,
false);
87 return;
88 }
89 }
90
91 UAbilityTask_WaitGameplayEvent* WaitMove = UAbilityTask_WaitGameplayEvent::WaitGameplayEvent(this, TAG_EVENT_INPUT_MOVE, nullptr, true, false);
92
93 if (!WaitMove)
94 {
95 return;
96 }
97
98 WaitMove->EventReceived.AddDynamic(this, &ThisClass::OnCancelableInputDetected);
99 WaitMove->ReadyForActivation();
100}
virtual void EndAbility(const FGameplayAbilitySpecHandle Handle, const FGameplayAbilityActorInfo *ActorInfo, const FGameplayAbilityActivationInfo ActivationInfo, bool bReplicateEndAbility, bool bWasCancelled) override
Definition GA_Base.cpp:22