mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-16 07:30:42 +01:00
Scritpts/Commands: Fix area name display if no area present. Closes #21727.
(cherry picked from commit 2a50f9202b)
This commit is contained in:
@@ -0,0 +1,5 @@
|
||||
--
|
||||
DELETE FROM `trinity_string` WHERE `entry` IN (848,882);
|
||||
INSERT INTO `trinity_string` (`entry`,`content_default`) VALUES
|
||||
(848,'│ Map: %s, Zone: %s'),
|
||||
(882,'│ Map: %s, Zone: %s, Area: %s');
|
||||
@@ -772,6 +772,7 @@ enum TrinityStrings
|
||||
LANG_PINFO_CHR_PLAYEDTIME = 853,
|
||||
LANG_PINFO_CHR_MAILS = 854,
|
||||
LANG_PINFO_CHR_LEVEL_HIGH = 871,
|
||||
LANG_PINFO_CHR_MAP_WITH_AREA = 882,
|
||||
|
||||
LANG_CHARACTER_GENDER_MALE = 855,
|
||||
LANG_CHARACTER_GENDER_FEMALE = 856,
|
||||
@@ -801,7 +802,8 @@ enum TrinityStrings
|
||||
// = 879, see LANG_PINFO_CHR_REGMAILS
|
||||
LANG_ACCOUNT_SEC_TYPE = 880,
|
||||
LANG_RBAC_EMAIL_REQUIRED = 881,
|
||||
// Room for in-game strings 882-999 not used
|
||||
// = 882, LANG_PINFO_CHR_MAP_WITH_AREA
|
||||
// Room for in-game strings 883-999 not used
|
||||
|
||||
// Level 4 (CLI only commands)
|
||||
LANG_COMMAND_EXIT = 1000,
|
||||
|
||||
@@ -1676,8 +1676,8 @@ public:
|
||||
// Position data print
|
||||
uint32 mapId;
|
||||
uint32 areaId;
|
||||
std::string areaName = handler->GetTrinityString(LANG_UNKNOWN);
|
||||
std::string zoneName = handler->GetTrinityString(LANG_UNKNOWN);
|
||||
char const* areaName = nullptr;
|
||||
char const* zoneName = nullptr;
|
||||
|
||||
// Guild data print variables defined so that they exist, but are not necessarily used
|
||||
ObjectGuid::LowType guildId = UI64LIT(0);
|
||||
@@ -1899,17 +1899,23 @@ public:
|
||||
AreaTableEntry const* area = sAreaTableStore.LookupEntry(areaId);
|
||||
if (area)
|
||||
{
|
||||
areaName = area->AreaName[handler->GetSessionDbcLocale()];
|
||||
zoneName = area->AreaName[handler->GetSessionDbcLocale()];
|
||||
|
||||
AreaTableEntry const* zone = sAreaTableStore.LookupEntry(area->ParentAreaID);
|
||||
if (zone)
|
||||
{
|
||||
areaName = zoneName;
|
||||
zoneName = zone->AreaName[handler->GetSessionDbcLocale()];
|
||||
}
|
||||
}
|
||||
|
||||
if (target)
|
||||
handler->PSendSysMessage(LANG_PINFO_CHR_MAP, map->MapName[handler->GetSessionDbcLocale()],
|
||||
(!zoneName.empty() ? zoneName.c_str() : handler->GetTrinityString(LANG_UNKNOWN)),
|
||||
(!areaName.empty() ? areaName.c_str() : handler->GetTrinityString(LANG_UNKNOWN)));
|
||||
if (!zoneName)
|
||||
zoneName = handler->GetTrinityString(LANG_UNKNOWN);
|
||||
|
||||
if (areaName)
|
||||
handler->PSendSysMessage(LANG_PINFO_CHR_MAP_WITH_AREA, map->MapName[locale], zoneName, areaName);
|
||||
else
|
||||
handler->PSendSysMessage(LANG_PINFO_CHR_MAP, map->MapName[locale], zoneName);
|
||||
|
||||
// Output XVII. - XVIX. if they are not empty
|
||||
if (!guildName.empty())
|
||||
|
||||
Reference in New Issue
Block a user