Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Return TypeNameParametersDescription
BooleanCanInterruptAbility
  • (UAblAbilityContext) Context
  • (UAblAbility) CurrentAbility
Called when this Ability is attempting to interrupt CurrentAbility. If the event returns true, the interruption is allowed, otherwise it is prevented. Defaults to false.
BooleanCustomFilterCondition
  • (UAblAbilityContext) Context
  • (FName) EventName
  • (AActor) Actor

Called by the Custom Filter. If this event returns true, the Actor is accepted - otherwise it's rejected. Defaults to true.

Warning

This event can be called Asynchronously. This event should NEVER set data on any Actors. Reading data on an Actor (i.e. Stats) is fine.


IntegerGetMaxStacks
  • (UAblAbilityContext) Context
Called by the Ability Component when determining the maximum amount of stacks allowed by this Ability. By default it returns the value set on the Ability (accessible through the GetBaseMaxStacks method), however it can be modified at run-time if needed.
BooleanCustomCanAbilityExecute
  • (UAblAbilityContext) Context
Called before an Ability is allowed to execute to allow for any further custom checks that the Ability system doesn't cover. If your game requires things like resource checks, this is where you can add execute them. Default returns true.
BooleanCustomCanLoopExecute
  • (UAblAbilityContext) Context
Called before each new loop iteration begins on a looping Ability to allow custom checks (similar to CustomCanAbilityExecute). Defaults to true.
BooleanCheckCustomChannelConditional
  • (UAblAbilityContext) Context
  • (FName) EventName
Called by the Custom Channel Condition to check if the Ability should be allowed to continue channeling. Defaults to true.
FloatCalculateDamageForActor
  • (UAblAbilityContext) Context
  • (FName) EventName
  • (Float) BaseDamage
  • (AActor) Actor

Called by the Apply Damage Task. The value returned will be the final value applied to the Actor through the Apply Damage method. Defaults to Base Damage value.

Warning

This event can be called Asynchronously. This event should NEVER set data on any Actors. Reading data on an Actor (i.e. Stats) is fine.


BooleanCustomCanBranchTo
  • (UAblAbilityContext) Context
  • (UAblAbility) BranchAbility
Called by the Custom Branch Conditional. Return true if the Ability should be allowed to branch to the Branch Ability, false if not. Defaults to true.
None (Void)OnAbilityStart
  • (UAblAbilityContext) Context
Called whenever the Ability has passed all per-requisites and is starting execution.
None (Void)OnAbilityEnd
  • (UAblAbilityContext) Context
Called whenever the Ability successfully finishes execution.
None (Void)OnAbilityInterrupt
  • (UAblAbilityContext) Context
Called whenever the Ability has been interrupted successfully and is about to stop execution.
None (Void)OnAbilityBranch
  • (UAblAbilityContext) Context
Called whenever the Ability has successful branched into another Ability and is about to stop execution.
None (Void)OnCollisionEvent
  • (UAblAbilityContext) Context
  • (FName) EventName
  • (Array<FAblQueryResult>) HitEntities
Called by Collision Query and Collision Sweep Tasks, if enabled, once the results have been collected.
None (Void)OnRaycastEvent
  • (UAblAbilityContext) Context
  • (FName) EventName
  • (Array<FHitResult>) HitResults
Called by the Raycast Query Task, if enabled, once the results have been collected.
None (Void)OnCustomEvent
  • (UAblAbilityContext) Context
  • (FName) EventName
Called by the Custom Event Task. A completely blank slate for any custom logic your game may need.
None (Void)OnSpawnedActor
  • (UAblAbilityContext) Context
  • (FName) EventName
  • (AActor) SpawnedActor
Called by the Spawn Actor Task, if enabled.


Return TypeNameParametersDescription
EAblAbilityStartResultCanActivateAbility
  • (UAblAbilityContext) Context
Returns the start result if the Ability was to be activated. Does not actually activate the Ability. This method is called during normal Ability activation, so its not necessary to call it yourself.
EAblAbilityStartResultActivateAbility
  • (UAblAbilityContext) Context
Checks all per-requisite logic and attempts to Activate the provided Ability.
BooleanIsPlayingAbility
  • None
Returns true if the component is playing an active Ability (use GetTotalNumberOfPassives or IsPassiveActive to check for Passive Abilities).
EAblAbilityStartResultBranchAbility
  • (UAblAbilityContext) Context
Returns the result of attempting to branch into a new Ability. This action will be queued automatically if the component is in the middle of an update.
BooleanHasAbilityAnimation
  • None
Returns true if an active Play Animation Task is using the Ability Animation State Node. This method is very useful for Animation Blueprints.
BooleanIsAbilityOnCooldown
  • (UAblAbility) Ability
Returns true if the Ability is currently on cooldown for this Component, or not.
BooleanIsPassiveActive
  • (UAblAbility) Ability
Returns true if the provided Ability is active as a Passive Ability on the Component.
UAblAbilityGetActiveAbility
  • None
Returns the active Ability, if one is playing. Otherwise it returns null.
None (Void)CancelAbility
  • (UAblAbility) Ability
  • (EAblAbilityTaskResult) ResultToUse
Cancels the provided Ability if it is running on the component. ResultToUse is used to determine how to treat the cancel internally, as a branch, interrupt, or success. This method accepts passive and active abilities, however passives can only successfully end and so ResultToUse is ignored in that case.
IntegerGetTotalNumberOfPassives
  • None
Returns the number of Passive Abilities currently executing on this Component.
None (Void)GetCurrentPassiveAbilities
  • (Array<UAblAbility>) OutPassives
Fills the OutPassives parameter with all current running Passive Abilities.
None (Void)AddTag
  • (FGameplayTag) Tag
Adds the provided Tag to the Component's Tag Container.
None (Void)RemoveTag
  • (FGameplayTag) Tag
Removes the provided Tag from the Component's Tag Container.
BooleanHasTag
  • (FGameplayTag) Tag
Returns true if the provided Tag is found in the Component's Tag Container.
BooleanMatchesAnyTag
  • (FGameplayTagContainer) Container
Returns true if ANY of the Tags contained within the provided container are found in the Component's Tag Container.
BooleanMatchesAllTags
  • (FGameplayTagContainer) Container
Returns true if ALL of the Tags contained within the provided container are found in the Component's Tag Container.
BooleanMatchesQuery
  • (FGameplayTagQuery) Query
Returns true if the Query successfully matches with our Component's Tag Container.
FGameplayTagContainerGetGameplayTagContainer
  • None
Returns a copy of our Component's Tag Container.

...