Blueprint Reference
Return Type | Name | Parameters | Description |
---|---|---|---|
UAblAbility | GetAbilityObjectFromClass |
| Returns the CDO of the Ability if the provided class inherits from UAblAbility. |
EAblAbilityStartResult | ActivateAbility |
| Attempts to start an Ability using the provided context, returns the result. |
UAblAbilityContext | CreateAbilityContext |
| Creates an Ability Context using the provided information. |
Boolean | IsSuccessfulStartResult |
| Returns true or false depending on if the provided result shows the Ability was started successfully. Given that some Abilities may return codes beyond EAblAbilityStartResult::Success and are actually valid (i.e. EAblAbilityStartResult::AsyncProcessing) - this method is a safe way to check if your Ability truly did succeed. |
Methods
Return Type | Name | Parameters | Description |
---|---|---|---|
AActor | GetSelfActor |
| Returns the Actor that is executing this Ability. |
UAblAbilityComponent | GetSelfAbilityComponent |
| Returns the Ability Component of the Actor that is executing this Ability. |
AActor | GetOwner |
| Returns the Actor marked as the Owner Target Type of the Ability. |
AActor | GetInstigator |
| Returns the Actor marked as the Instigator Target Type of the Ability. |
Array<AActor> | GetTargetActors |
| Returns the Actors marked as Targets of this Ability. |
Integer | GetCurrentStackCount |
| Returns the current stack count of this Ability. |
None (Void) | SetStackCount |
| Sets the current stack count of this Ability to the provided value. |
Float | GetCurrentTime |
| Retrieves the current time of the Ability. |
Float | GetCurrentTimeRatio |
| Returns the current time of the Ability as a ratio between 0 and 1.0 |
Float | GetLastDeltaTime |
| Retrieves the last delta time value used when updating the Ability. |
Members
Type | Member Name | Description |
---|---|---|
UPrimitiveComponent | PrimitiveComponent | The Primitive Component of the Actor hit by a collision query/sweep. |
AActor | Actor | The Actor hit by the collision query/sweep. |
Methods
Return Type | Name | Parameters | Description |
---|---|---|---|
Float | GetLength |
| Returns the length, in seconds, of the Ability. |
Float | GetRange |
| Returns the range of the Ability, if it has Targeting logic. |
Boolean | RequiresTarget |
| Returns true if the Ability requires having a target to execute, false otherwise. |
Float | GetBaseCooldown |
| Returns the time, in seconds, before this Ability is allowed to be used again by the same Actor. |
Integer | GetBaseMaxStacks |
| Returns the Max Stacks property of the Ability. |
FGameplayTagContainer | GetAbilityTagContainer |
| Returns the Gameplay Tags for the Ability. Note: This is a copy and does not affect the Ability. |
Boolean | IsLooping |
| Returns true if the Ability is set to Loop, or false otherwise. |
Integer | GetLoopMaxIterations |
| Returns the maximum number of iterations this Ability is allowed to execute if it's set to Looping. 0 = Infinite. |
FVector2D | GetLoopRange |
| Returns a 2D Vector containing the Start (X) and End (Y) times of the Loop, if enabled on the Ability. |
Boolean | IsPassive |
| Returns true if the Ability is marked as a Passive Ability. |
Boolean | RefreshDurationOnNewStack |
| Returns true if the Passive Ability is marked as refreshing its duration when a new stack is successfully applied. |
Boolean | AlwaysRefreshDuration |
| Returns true if the Passive Ability always refreshes its duration regardless of if a new stack was successful applied or failed. |
Boolean | RefreshLoopTimeOnly |
| Returns true if the Passive Ability refreshes its Loop time counter rather than restarting the Ability at zero when new stacks are applied. |
Boolean | IsChanneled |
| Returns true if the Ability is marked as a Channeled Ability. |
Boolean | MustPassAllChannelConditions |
| Returns true if the Ability must pass all Channel Conditions and not just one. |
Events
Return Type | Name | Parameters | Description |
---|---|---|---|
Boolean | CanInterruptAbility |
| 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. |
Boolean | CustomFilterCondition |
| Called by the Custom Filter. If this event returns true, the Actor is accepted - otherwise it's rejected. Defaults to true. 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. |
Float | GetCooldown |
| Called by the Ability Component when determining the cooldown for an Ability. By default, this simply returns the value set on the Ability (accessible through the GetBaseCooldown method), however it can be modified at run-time if needed. |
Integer | GetMaxStacks |
| 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. |
Boolean | CustomCanAbilityExecute |
| 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. |
Boolean | CustomCanLoopExecute |
| Called before each new loop iteration begins on a looping Ability to allow custom checks (similar to CustomCanAbilityExecute). Defaults to true. |
Boolean | CheckCustomChannelConditional |
| Called by the Custom Channel Condition to check if the Ability should be allowed to continue channeling. Defaults to true. |
Float | CalculateDamageForActor |
| 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. 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. |
None (Void) | FindTargets |
| Called by the Custom Targeting option. Any Actors added to the FoundTargets array will be used as Targets for this Ability. This is useful if you have your own set of logic or targets you wish to use. |
Boolean | CustomCanBranchTo |
| 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 |
| Called whenever the Ability has passed all per-requisites and is starting execution. |
None (Void) | OnAbilityEnd |
| Called whenever the Ability successfully finishes execution. |
None (Void) | OnAbilityInterrupt |
| Called whenever the Ability has been interrupted successfully and is about to stop execution. |
None (Void) | OnAbilityBranch |
| Called whenever the Ability has successful branched into another Ability and is about to stop execution. |
None (Void) | OnCollisionEvent |
| Called by Collision Query and Collision Sweep Tasks, if enabled, once the results have been collected. |
None (Void) | OnRaycastEvent |
| Called by the Raycast Query Task, if enabled, once the results have been collected. |
None (Void) | OnCustomEvent |
| Called by the Custom Event Task. A completely blank slate for any custom logic your game may need. |
None (Void) | OnSpawnedActor |
| Called by the Spawn Actor Task, if enabled. |
Return Type | Name | Parameters | Description |
---|---|---|---|
EAblAbilityStartResult | CanActivateAbility |
| 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. |
EAblAbilityStartResult | ActivateAbility |
| Checks all per-requisite logic and attempts to Activate the provided Ability. |
Boolean | IsPlayingAbility |
| Returns true if the component is playing an active Ability (use GetTotalNumberOfPassives or IsPassiveActive to check for Passive Abilities). |
EAblAbilityStartResult | BranchAbility |
| 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. |
Boolean | HasAbilityAnimation |
| Returns true if an active Play Animation Task is using the Ability Animation State Node. This method is very useful for Animation Blueprints. |
Boolean | IsAbilityOnCooldown |
| Returns true if the Ability is currently on cooldown for this Component, or not. |
Boolean | IsPassiveActive |
| Returns true if the provided Ability is active as a Passive Ability on the Component. |
UAblAbility | GetActiveAbility |
| Returns the active Ability, if one is playing. Otherwise it returns null. |
None (Void) | CancelAbility |
| 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. |
Integer | GetTotalNumberOfPassives |
| Returns the number of Passive Abilities currently executing on this Component. |
None (Void) | GetCurrentPassiveAbilities |
| Fills the OutPassives parameter with all current running Passive Abilities. |
None (Void) | AddTag |
| Adds the provided Tag to the Component's Tag Container. |
None (Void) | RemoveTag |
| Removes the provided Tag from the Component's Tag Container. |
Boolean | HasTag |
| Returns true if the provided Tag is found in the Component's Tag Container. |
Boolean | MatchesAnyTag |
| Returns true if ANY of the Tags contained within the provided container are found in the Component's Tag Container. |
Boolean | MatchesAllTags |
| Returns true if ALL of the Tags contained within the provided container are found in the Component's Tag Container. |
Boolean | MatchesQuery |
| Returns true if the Query successfully matches with our Component's Tag Container. |
FGameplayTagContainer | GetGameplayTagContainer |
| Returns a copy of our Component's Tag Container. |