G1R AngelScript
Scripting reference for the Gothic 1 Remake
Loading...
Searching...
No Matches
FGameplayAbilitySpec Struct Reference

An activatable ability spec, hosted on the ability system component. This defines both what the ability is (what class, what level, input binding etc) and also holds runtime state that must be kept outside of the ability being instanced/activated. More...

Public Member Functions

Functions
UGameplayAbility GetPrimaryInstance () const
void SetbInputPressed (bool bValue)
bool GetbRemoveAfterActivation () const
void SetbRemoveAfterActivation (bool bValue)
bool GetbPendingRemove () const
void SetbPendingRemove (bool bValue)
bool GetbActivateOnce () const
void SetbActivateOnce (bool bValue)
bool GetbInputPressed () const
bool ShouldReplicateAbilitySpec () const
TArray< UGameplayAbility > GetAbilityInstances () const
bool IsActive () const
void PreReplicatedRemoved (FGameplayAbilitySpecContainer InArraySerializer)
void PostReplicatedAdd (FGameplayAbilitySpecContainer InArraySerializer)
FString GetDebugString ()
FGameplayAbilitySpec & opAssign (FGameplayAbilitySpec Other)

Public Attributes

Variables
TArray< TObjectPtr< UGameplayAbility > > ReplicatedInstances
 Replicated instances of this ability..
UGameplayAbility Ability
 Ability of the spec (Always the CDO. This should be const but too many things modify it currently).
int Level
 Level of Ability.
int InputID
 InputID, if bound.
TWeakObjectPtr< UObject > SourceObject
 Object this ability was created from, can be an actor or static object. Useful to bind an ability to a gameplay object.
uint8 ActiveCount
 A count of the number of times this ability has been activated minus the number of times it has been ended. For instanced abilities this will be the number of currently active instances. Can't replicate until prediction accurately handles this.
FGameplayAbilityActivationInfo ActivationInfo
 Activation state of this ability. This is not replicated since it needs to be overwritten locally on clients during prediction.
FGameplayTagContainer DynamicAbilityTags
 Optional ability tags that are replicated. These tags are also captured as source tags by applied gameplay effects.
TArray< TObjectPtr< UGameplayAbility > > NonReplicatedInstances
 Non replicating instances of this ability.
FGameplayAbilitySpecHandle Handle
 Handle for outside sources to refer to this spec by.
FActiveGameplayEffectHandle GameplayEffectHandle
 Handle to GE that granted us (usually invalid). FActiveGameplayEffectHandles are not synced across the network and this is valid only on Authority. If you need FGameplayAbilitySpec -> FActiveGameplayEffectHandle, then use AbilitySystemComponent::FindActiveGameplayEffectHandle.
bool bInputPressed
bool bRemoveAfterActivation
bool bPendingRemove
bool bActivateOnce
const UGameplayAbility PrimaryInstance
const TArray< UGameplayAbility > AbilityInstances
const FString DebugString

Detailed Description

An activatable ability spec, hosted on the ability system component. This defines both what the ability is (what class, what level, input binding etc) and also holds runtime state that must be kept outside of the ability being instanced/activated.

Member Function Documentation

◆ GetAbilityInstances()

TArray< UGameplayAbility > GetAbilityInstances ( ) const

◆ GetbActivateOnce()

bool GetbActivateOnce ( ) const

◆ GetbInputPressed()

bool GetbInputPressed ( ) const

◆ GetbPendingRemove()

bool GetbPendingRemove ( ) const

◆ GetbRemoveAfterActivation()

bool GetbRemoveAfterActivation ( ) const

◆ GetDebugString()

FString GetDebugString ( )

◆ GetPrimaryInstance()

UGameplayAbility GetPrimaryInstance ( ) const

◆ IsActive()

bool IsActive ( ) const

◆ opAssign()

◆ PostReplicatedAdd()

void PostReplicatedAdd ( FGameplayAbilitySpecContainer InArraySerializer)

◆ PreReplicatedRemoved()

void PreReplicatedRemoved ( FGameplayAbilitySpecContainer InArraySerializer)

◆ SetbActivateOnce()

void SetbActivateOnce ( bool bValue)

◆ SetbInputPressed()

void SetbInputPressed ( bool bValue)

◆ SetbPendingRemove()

void SetbPendingRemove ( bool bValue)

◆ SetbRemoveAfterActivation()

void SetbRemoveAfterActivation ( bool bValue)

◆ ShouldReplicateAbilitySpec()

bool ShouldReplicateAbilitySpec ( ) const

Member Data Documentation

◆ Ability

Ability of the spec (Always the CDO. This should be const but too many things modify it currently).

◆ AbilityInstances

const TArray<UGameplayAbility> AbilityInstances

◆ ActivationInfo

Activation state of this ability. This is not replicated since it needs to be overwritten locally on clients during prediction.

◆ ActiveCount

uint8 ActiveCount

A count of the number of times this ability has been activated minus the number of times it has been ended. For instanced abilities this will be the number of currently active instances. Can't replicate until prediction accurately handles this.

◆ bActivateOnce

bool bActivateOnce

◆ bInputPressed

bool bInputPressed

◆ bPendingRemove

bool bPendingRemove

◆ bRemoveAfterActivation

bool bRemoveAfterActivation

◆ DebugString

const FString DebugString

◆ DynamicAbilityTags

FGameplayTagContainer DynamicAbilityTags

Optional ability tags that are replicated. These tags are also captured as source tags by applied gameplay effects.

◆ GameplayEffectHandle

FActiveGameplayEffectHandle GameplayEffectHandle

Handle to GE that granted us (usually invalid). FActiveGameplayEffectHandles are not synced across the network and this is valid only on Authority. If you need FGameplayAbilitySpec -> FActiveGameplayEffectHandle, then use AbilitySystemComponent::FindActiveGameplayEffectHandle.

◆ Handle

Handle for outside sources to refer to this spec by.

◆ InputID

int InputID

InputID, if bound.

◆ Level

int Level

Level of Ability.

◆ NonReplicatedInstances

TArray<TObjectPtr<UGameplayAbility> > NonReplicatedInstances

Non replicating instances of this ability.

◆ PrimaryInstance

const UGameplayAbility PrimaryInstance

◆ ReplicatedInstances

TArray<TObjectPtr<UGameplayAbility> > ReplicatedInstances

Replicated instances of this ability..

◆ SourceObject

TWeakObjectPtr<UObject> SourceObject

Object this ability was created from, can be an actor or static object. Useful to bind an ability to a gameplay object.