From 108173b87bb248cfd8def5d007a664129a2a9bdc Mon Sep 17 00:00:00 2001 From: Lefteris Notas Date: Thu, 21 May 2026 13:36:53 +0300 Subject: [PATCH] refactor: Simplify tag display name retrieval and enhance null checks in utility functions --- .../Framework/Private/Core/DA_GameTagRegistry.cpp | 5 ++--- Source/Framework/Private/Core/FL_GameUtilities.cpp | 13 ++++++++++++- .../Framework/Private/Player/BPC_StateManager.cpp | 4 ++++ .../Private/Weapons/BPC_DamageReceptionSystem.cpp | 3 +++ 4 files changed, 21 insertions(+), 4 deletions(-) diff --git a/Source/Framework/Private/Core/DA_GameTagRegistry.cpp b/Source/Framework/Private/Core/DA_GameTagRegistry.cpp index 3102611..348a95e 100644 --- a/Source/Framework/Private/Core/DA_GameTagRegistry.cpp +++ b/Source/Framework/Private/Core/DA_GameTagRegistry.cpp @@ -40,15 +40,14 @@ FText UDA_GameTagRegistry::GetTagDisplayName(const FGameplayTag& Tag) const } UGameplayTagsManager& TagManager = UGameplayTagsManager::Get(); - FString DevComment; - FString DisplayName = TagManager.GetTagDevCommentAndDisplayName(Tag, DevComment); + FText DisplayName = TagManager.GetTagDisplayNameText(Tag); if (DisplayName.IsEmpty()) { return FText::FromName(Tag.GetTagName()); } - return FText::FromString(DisplayName); + return DisplayName; } bool UDA_GameTagRegistry::ValidateTag(const FGameplayTag& Tag) const diff --git a/Source/Framework/Private/Core/FL_GameUtilities.cpp b/Source/Framework/Private/Core/FL_GameUtilities.cpp index 4aaaf7e..c03069e 100644 --- a/Source/Framework/Private/Core/FL_GameUtilities.cpp +++ b/Source/Framework/Private/Core/FL_GameUtilities.cpp @@ -16,7 +16,18 @@ UGI_GameFramework* UFL_GameUtilities::GetGameFramework(const UObject* WorldContextObject) { - return GetSubsystemSafe(WorldContextObject); + if (!WorldContextObject) + { + return nullptr; + } + + UWorld* World = WorldContextObject->GetWorld(); + if (!World) + { + return nullptr; + } + + return Cast(World->GetGameInstance()); } UGameInstanceSubsystem* UFL_GameUtilities::GetSubsystemByClass(const UObject* WorldContextObject, diff --git a/Source/Framework/Private/Player/BPC_StateManager.cpp b/Source/Framework/Private/Player/BPC_StateManager.cpp index 780fbca..805e049 100644 --- a/Source/Framework/Private/Player/BPC_StateManager.cpp +++ b/Source/Framework/Private/Player/BPC_StateManager.cpp @@ -2,6 +2,10 @@ // UE5 Modular Game Framework — BPC_StateManager Implementation #include "Player/BPC_StateManager.h" +#include "Player/BPC_HealthSystem.h" +#include "Player/BPC_StressSystem.h" +#include "Player/BPC_StaminaSystem.h" +#include "Player/BPC_MovementStateSystem.h" #include "GameplayTagsManager.h" DEFINE_LOG_CATEGORY_STATIC(LogStateManager, Log, All); diff --git a/Source/Framework/Private/Weapons/BPC_DamageReceptionSystem.cpp b/Source/Framework/Private/Weapons/BPC_DamageReceptionSystem.cpp index 8244a31..f0c7337 100644 --- a/Source/Framework/Private/Weapons/BPC_DamageReceptionSystem.cpp +++ b/Source/Framework/Private/Weapons/BPC_DamageReceptionSystem.cpp @@ -2,6 +2,9 @@ // UE5 Modular Game Framework — BPC_DamageReceptionSystem Implementation #include "Weapons/BPC_DamageReceptionSystem.h" +#include "Player/BPC_HealthSystem.h" +#include "Weapons/BPC_ShieldDefenseSystem.h" +#include "Weapons/BPC_HitReactionSystem.h" DEFINE_LOG_CATEGORY_STATIC(LogFrameworkDamage, Log, All);