UAbilityTask_StartAbilityState

An ability state is simply an ability task that provides a way to handle the ability being interrupted.

Choose your operating system:

Windows

macOS

Linux

Inheritance Hierarchy

References

Module

GameplayAbilities

Header

/Engine/Plugins/Runtime/GameplayAbilities/Source/GameplayAbilities/Public/Abilities/Tasks/AbilityTask_StartAbilityState.h

Include

#include "Abilities/Tasks/AbilityTask_StartAbilityState.h"

Syntax

UCLASS()
class UAbilityTask_StartAbilityState : public UAbilityTask

Remarks

An ability state is simply an ability task that provides a way to handle the ability being interrupted. You can use ability states to do state-specific cleanup if the ability ends or was interrupted at a certain point during it's execution.

An ability state will always result in either 'OnStateEnded' or 'OnStateInterrupted' being called.

'OnStateEnded' will be called if:

  • The ability itself ends via AGameplayAbility::EndAbility

  • The ability state is manually ended via AGameplayAbility::EndAbilityState

  • Another ability state is started will 'bEndCurrentState' set to true

'OnStateInterrupted' will be called if:

  • The ability itself is cancelled via AGameplayAbility::CancelAbility

Variables

Name Description

Public variable UProperty BlueprintAssignable

FAbilityStateDe...

 

OnStateEnded

Invoked if 'EndAbilityState' is called or if 'EndAbility' is called and this state is active.

Public variable UProperty BlueprintAssignable

FAbilityStateDe...

 

OnStateInterrupted

Invoked if the ability was interrupted and this state is active.

Constructors

Name Description

Public function

UAbilityTask_StartAbilityState

(
    const FObjectInitializer& ObjectIn...
)

Functions

Name Description

Public function Static UFunction BlueprintCallable, Category, Meta

UAbilityTask...

 

StartAbilityState

(
    UGameplayAbility* OwningAbilit...,
    FName StateName,
    bool bEndCurrentState
)

Starts a new ability state.

Overridden from UGameplayTask

Name Description

Public function Virtual

void

 

Activate()

Called to trigger the actual task once the delegates have been set up Note that the default implementation does nothing and you don't have to call it

Public function Virtual

void

 

ExternalCancel()

Called when the task is asked to cancel from an outside node.

Public function Virtual Const

FString

 

GetDebugString()

Return debug string describing task