Navigation
Unreal Engine C++ API Reference > Runtime > GameplayTags
Inheritance Hierarchy
- UObject
- UGameplayTagsManager
References
Module | GameplayTags |
Header | /Engine/Source/Runtime/GameplayTags/Classes/GameplayTagsManager.h |
Include | #include "GameplayTagsManager.h" |
Syntax
UCLASS (Config=Engine, MinimalAPI)
class UGameplayTagsManager : public UObject
Remarks
Holds data about the tag dictionary, is in a singleton UObject
Variables
Type | Name | Description | |
---|---|---|---|
![]() |
int32 | NumBitsForContainerSize | Numbers of bits to use for replicating container size. This can be set via config. |
![]() |
FOnFilterGameplayTag | OnFilterGameplayTag | |
![]() |
FOnFilterGameplayTagChildren | OnFilterGameplayTagChildren | |
![]() |
FOnGameplayTagDoubleClickedEditor | OnGatherGameplayTagDoubleClickedEditor | |
![]() |
FOnGetCategoriesMetaFromPropertyHandle | OnGetCategoriesMetaFromPropertyHandle | |
![]() |
TMap< FGameplayTag, int32 > | ReplicationCountMap | |
![]() |
TMap< FGameplayTag, int32 > | ReplicationCountMap_Containers | |
![]() |
TMap< FGameplayTag, int32 > | ReplicationCountMap_SingleTags |
Constructors
Type | Name | Description | |
---|---|---|---|
![]() |
UGameplayTagsManager
(
const FObjectInitializer& ObjectInitializer |
Destructors
Type | Name | Description | |
---|---|---|---|
![]() |
Destructor |
Functions
Type | Name | Description | |
---|---|---|---|
![]() |
FGameplayTag | AddNativeGameplayTag
(
FName TagName, |
Registers the given name as a gameplay tag, and tracks that it is being directly referenced from code This can only be called during engine initialization, the table needs to be locked down before replication |
![]() |
void | AddTagIniSearchPath
(
const FString& RootDir |
Loads tag inis contained in the specified path |
![]() ![]() |
FDelegateHandle | CallOrRegister_OnDoneAddingNativeTagsDelegate
(
const FSimpleMulticastDelegate::FDelegate& Delegate |
Register a callback for when native tags are done being added (this is also a safe point to consider that the gameplay tags have fully been initialized). |
![]() |
void | ClearShouldDeferGameplayTagTreeRebuilds
(
bool bRebuildTree |
Stops suppressing GameplayTag tree rebuilds and (optionally) rebuilds the tree |
![]() |
void | Clears runtime overrides, reverting to bShouldAllowUnloadingTags when determining GameplayTags unload behavior | |
![]() |
void | Helper function to construct the gameplay tag tree | |
![]() |
DECLARE_TS_MULTICAST_DELEGATE_OneParam
(
FOnGameplayTagLoaded, |
||
![]() |
void | Helper function to destroy the gameplay tag tree | |
![]() |
void | Call to flush the list of native tags, once called it is unsafe to add more | |
![]() ![]() |
void | DumpSources
(
FOutputDevice& Out |
Implementation of console command GameplayTags.DumpSources |
![]() |
void | Refresh the gameplaytag tree due to an editor change | |
![]() ![]() |
bool | ExtractParentTags
(
const FGameplayTag& GameplayTag, |
Fills in an array of gameplay tags with all of tags that are the parents of the passed in tag. |
![]() ![]() |
FGameplayTag | FindGameplayTagFromPartialString_Slow
(
FString PartialString |
Searches for a gameplay tag given a partial string. |
![]() ![]() |
FORCEINLINE_DEBUGGABLE TSharedPtr< FGameplayTagNode > | FindTagNode
(
FName TagName |
Checks node tree to see if a FGameplayTagNode with the name exists |
![]() ![]() |
FORCEINLINE_DEBUGGABLE TSharedPtr< FGameplayTagNode > | FindTagNode
(
const FGameplayTag& GameplayTag |
Checks node tree to see if a FGameplayTagNode with the tag exists |
![]() |
FGameplayTagSource * | FindTagSource
(
FName TagSourceName |
Returns the tag source for a given tag source name and type, or null if not found |
![]() ![]() |
const FGameplayTagSource * | FindTagSource
(
FName TagSourceName |
Returns the tag source for a given tag source name and type, or null if not found |
![]() ![]() |
void | FindTagSourcesWithType
(
EGameplayTagSourceType TagSourceType, |
Fills in an array with all tag sources of a specific type |
![]() ![]() |
void | FindTagsWithSource
(
FStringView PackageNameOrPath, |
|
![]() ![]() |
void | GameplayTagContainerLoaded
(
FGameplayTagContainer& Container, |
Notification that a tag container has been loaded via serialize |
![]() ![]() |
int32 | GameplayTagsMatchDepth
(
const FGameplayTag& GameplayTagOne, |
Check to see how closely two FGameplayTags match. |
![]() ![]() |
UGameplayTagsManager & | Get () |
Returns the global UGameplayTagsManager manager |
![]() ![]() |
void | GetAllTagsFromSource
(
FName TagSource, |
Gets a list of all gameplay tag nodes added by the specific source |
![]() ![]() |
FString | GetCategoriesMetaFromField
(
TFieldType* Field |
Returns "Categories" meta property from given field, used for filtering by tag widget |
![]() ![]() |
FString | GetCategoriesMetaFromFunction
(
const UFunction* Func, |
Returns "GameplayTagFilter" meta property from given function, used for filtering by tag widget for any parameters of the function that end up as BP pins |
![]() ![]() |
FString | GetCategoriesMetaFromPropertyHandle
(
TSharedPtr< class IPropertyHandle > PropertyHandle |
Returns "Categories" meta property from given handle, used for filtering by tag widget |
![]() ![]() |
void | GetFilteredGameplayRootTags
(
const FString& InFilterString, |
Gets a Filtered copy of the GameplayRootTags Array based on the comma delimited filter string passed in |
![]() ![]() |
UGameplayTagsManager * | Returns possibly nullptr to the manager. Needed for some shutdown cases to avoid reallocating. | |
![]() ![]() |
FGameplayTagNetIndex | This is the actual value for an invalid tag "None". | |
![]() ![]() |
int32 | The length in bits of the first segment when net serializing tags. | |
![]() ![]() |
FGameplayTagNetIndex | GetNetIndexFromTag
(
const FGameplayTag& InTag |
|
![]() ![]() |
int32 | Cached number of bits we need to replicate tags. | |
![]() ![]() |
const TArray< TSharedPtr< FGameplayTagNode > > & | ||
![]() ![]() |
uint32 | Returns the hash of NetworkGameplayTagNodeIndex | |
![]() ![]() |
int32 | GetNumberOfTagNodes
(
const FGameplayTag& GameplayTag |
Returns the number of parents a particular gameplay tag has. |
![]() ![]() |
int32 | ||
![]() |
int32 | Gets the number of tag source search paths | |
![]() ![]() |
void | GetOwnersForTagSource
(
const FString& SourceName, |
Returns a list of the owners for a restricted tag config file. May be empty |
![]() ![]() |
void | GetRestrictedTagConfigFiles
(
TArray< FString >& RestrictedConfigFiles |
Returns a list of the ini files that contain restricted tags |
![]() ![]() |
void | GetRestrictedTagSources
(
TArray< const FGameplayTagSource* >& Sources |
Returns a list of the source files that contain restricted tags |
![]() ![]() |
FORCEINLINE_DEBUGGABLE const FGameplayTagContainer * | GetSingleTagContainer
(
const FGameplayTag& GameplayTag |
|
![]() ![]() |
bool | GetTagEditorData
(
FName TagName, |
Returns information about tag. If not found return false |
![]() ![]() |
bool | GetTagEditorData
(
FName TagName, |
Returns information about tag. If not found return false |
![]() ![]() |
FName | GetTagNameFromNetIndex
(
FGameplayTagNetIndex Index |
Gets a tag name from net index and vice versa, used for replication efficiency |
![]() |
void | GetTagSourceSearchPaths
(
TArray< FString >& OutPaths |
Gets all the current directories to look for tag sources in |
![]() ![]() |
bool | ImportSingleGameplayTag
(
FGameplayTag& Tag, |
Handles establishing a single tag from an imported tag name (accounts for redirects too). |
![]() ![]() |
bool | IsDictionaryTag
(
FName TagName |
Returns true if this tag was explicitly registered, this is false for implictly added parent tags |
![]() |
bool | IsValidGameplayTagString
(
const FString& TagString, |
Returns true if this is a valid gameplay tag string (foo.bar.baz). If false, it will fill |
![]() |
void | LoadGameplayTagTables
(
bool bAllowAsyncLoad |
Loads the tag tables referenced in the GameplayTagSettings object |
![]() |
void | NotifyGameplayTagDoubleClickedEditor
(
FString TagName |
|
![]() |
void | NotifyTagReplicated
(
FGameplayTag Tag, |
|
![]() ![]() |
FSimpleMulticastDelegate & | This is a delegate that is called during initialization/initial loading and signals the last chance to add tags before we are considered to be fully loaded (all tags registered). | |
![]() |
void | ||
![]() |
void | Mechanism for tracking what tags are frequently replicated | |
![]() |
void | ||
![]() |
void | ||
![]() ![]() |
void | RedirectSingleGameplayTag
(
FGameplayTag& Tag, |
Handles redirectors for a single tag, will also error on invalid tag. |
![]() ![]() |
void | RedirectTagsForContainer
(
FGameplayTagContainer& Container, |
Handles redirectors for an entire container, will also error on invalid tags |
![]() |
bool | RemoveTagIniSearchPath
(
const FString& RootDir |
Tries to remove the specified search path, will return true if anything was removed |
![]() ![]() |
void | RequestAllGameplayTags
(
FGameplayTagContainer& TagContainer, |
Gets the list of all registered tags, setting OnlyIncludeDictionaryTags will exclude implicitly added tags if possible |
![]() ![]() |
FGameplayTag | RequestGameplayTag
(
FName TagName, |
Gets the FGameplayTag that corresponds to the TagName |
![]() ![]() |
FGameplayTagContainer | RequestGameplayTagChildren
(
const FGameplayTag& GameplayTag |
Gets a Tag Container containing the all tags in the hierarchy that are children of this tag. |
![]() ![]() |
FGameplayTagContainer | RequestGameplayTagChildrenInDictionary
(
const FGameplayTag& GameplayTag |
Gets a Tag Container containing all of the tags in the hierarchy that are children of this tag, and were explicitly added to the dictionary |
![]() ![]() |
void | RequestGameplayTagContainer
(
const TArray< FString >& TagStrings, |
Adds the gameplay tags corresponding to the strings in the array TagStrings to OutTagsContainer |
![]() ![]() |
FGameplayTagContainer | RequestGameplayTagDirectDescendantsInDictionary
(
const FGameplayTag& GameplayTag, |
Gets a Tag Container containing all of the tags in the hierarchy that are children of this tag, were explicitly added to the dictionary, and do not have any explicitly added tags between them and the specified tag |
![]() ![]() |
FGameplayTag | RequestGameplayTagDirectParent
(
const FGameplayTag& GameplayTag |
Returns direct parent GameplayTag of this GameplayTag, calling on x.y will return x |
![]() ![]() |
FGameplayTagContainer | RequestGameplayTagParents
(
const FGameplayTag& GameplayTag |
Gets a Tag Container containing the supplied tag and all of its parents as explicit tags. |
![]() |
void | ResumeEditorRefreshGameplayTagTree
(
FGuid SuspendToken |
Resumes EditorRefreshGameplayTagTree requests; triggers a refresh if a request was made while it was suspended |
![]() |
void | SetShouldDeferGameplayTagTreeRebuilds
(
bool bShouldDeferRebuilds |
Pushes an override that suppresses calls to HandleGameplayTagTreeChanged that would result in a complete rebuild of the GameplayTag tree |
![]() |
void | SetShouldUnloadTagsOverride
(
bool bShouldUnloadTags |
Pushes an override that supersedes bShouldAllowUnloadingTags to allow/disallow unloading of GameplayTags in controlled scenarios |
![]() ![]() |
bool | Should we clear references to invalid tags loaded/saved in the editor | |
![]() ![]() |
bool | Returns true if we should import tags from UGameplayTagsSettings objects (configured by INI files) | |
![]() ![]() |
bool | If we are allowed to unload tags | |
![]() ![]() |
bool | Should use dynamic replication (Gameplay Tags need not match between client/server) | |
![]() ![]() |
bool | Should use fast replication | |
![]() ![]() |
bool | Should we print loading errors when trying to load invalid tags | |
![]() |
bool | ShowGameplayTagAsHyperLinkEditor
(
FString TagName |
|
![]() ![]() |
void | SingleGameplayTagLoaded
(
FGameplayTag& Tag, |
Notification that a gameplay tag has been loaded via serialize |
![]() ![]() |
void | SplitGameplayTagFName
(
const FGameplayTag& Tag, |
Splits a tag such as x.y.z into an array of names {x,y,z} |
![]() ![]() |
FString | StaticGetCategoriesMetaFromPropertyHandle
(
TSharedPtr< class IPropertyHandle > PropertyHandle |
Helper function, made to be called by custom OnGetCategoriesMetaFromPropertyHandle handlers |
![]() |
void | SuspendEditorRefreshGameplayTagTree
(
FGuid SuspendToken |
Suspends EditorRefreshGameplayTagTree requests |
![]() ![]() |
bool | ValidateTagCreation
(
FName TagName |
Returns true if if the passed in name is in the tag dictionary and can be created |
Classes
Type | Name | Description | |
---|---|---|---|
![]() |
FFilterGameplayTagContext | This is a container to filter out gameplay tags when they are invalid or when they don't meet the filter string If used from editor to filter out tags when picking them the FilterString is optional and the ReferencingPropertyHandle is required If used to validate an asset / assets you can provide the TagSourceAssets. |
Typedefs
Name | Description |
---|---|
FOnFilterGameplayTag | Allows dynamic hiding of gameplay tags in SGameplayTagWidget. |
FOnFilterGameplayTagChildren | Allows dynamic hiding of gameplay tags in SGameplayTagWidget. |
FOnGameplayTagDoubleClickedEditor | |
FOnGetCategoriesMetaFromPropertyHandle | Chance to dynamically change filter string based on a property handle |
Constants
Name | Description |
---|---|
NAME_Categories | |
NAME_GameplayTagFilter | |
OnEditorRefreshGameplayTagTree | This is called after EditorRefreshGameplayTagTree. |
SingletonManager | The Tag Manager singleton |