ULimenActiveAbility
Overview
ULimenActiveAbility is an abstract class that extends ULimenAbilityBase. It manages the activation, deactivation, and cooldown of abilities. This class provides a framework for implementing specific ability behaviors and handles network replication for ability events.
Properties
Type | Name | Access | Description |
|---|---|---|---|
FTimerHandle | AbilityCooldownTimer | Private | Timer handle for the cooldown timer. |
FTimerHandle | AbilityTimerHandle | Private | Timer handle for the activation delay timer. |
float | AbilityCooldown | EditDefaultsOnly, BlueprintReadOnly | The cooldown time that must pass before activating this ability again. |
float | AbilityActivationDelay | EditDefaultsOnly | Delay before the ability can be activated after being deactivated. |
bool | bIsOneShot | EditDefaultsOnly | Whether this ability is a one-shot ability (deactivated automatically after activation). |
bool | bStartEnabled | EditDefaultsOnly | Whether the ability starts enabled when initialized. |
bool | bIsActive | Private | Indicates whether the ability is currently active. |
bool | bIsEnabled | Private | Indicates whether the ability is enabled and can be activated. |
bool | bIsCooldownOver | Private | Indicates whether the cooldown period has ended. |
Functions
Return Type | Signature | Description |
|---|---|---|
void | Initialize(AActor* InOwner) | Initializes the ability with the given owner. |
void | ForceDeactivateAbility() | Forces the ability to deactivate immediately. |
void | Enable() | Enables the ability, allowing it to be activated. |
void | Disable() | Disables the ability, preventing it from being activated. |
void | ActivateAbility(AController* Controller, APawn* Pawn) | Activates the ability with the given controller and pawn. |
void | DeactivateAbility(AController* Controller, APawn* Pawn) | Deactivates the ability with the given controller and pawn. |
bool | CanActivateAbility() const | Determines if the ability can be activated based on current state. |
bool | CanDeactivateAbility() const | Determines if the ability can be deactivated based on current state. |
float | GetFullCooldownTime() const | Returns the full cooldown time of the ability. |
float | GetRemainingCooldownTime() const | Returns the remaining cooldown time of the ability. |
bool | IsActive() const | Checks if the ability is currently active. |
bool | IsEnabled() const | Checks if the ability is enabled and can be activated. |
bool | IsOnCooldown() const | Checks if the ability is on cooldown. |
Usage & Implementation Notes
The
AbilityActivatedandAbilityCancelledfunctions are placeholders for custom behavior when an ability is activated or cancelled.The
Multicast_AbilityActivatedandMulticast_AbilityDeactivatedfunctions handle network replication of ability activation and deactivation events.The cooldown timer is managed using Unreal Engine's
FTimerManager.