diff --git a/Source/Framework/Constants/Language.cs b/Source/Framework/Constants/Language.cs index 31740a9fd..ca81387f1 100644 --- a/Source/Framework/Constants/Language.cs +++ b/Source/Framework/Constants/Language.cs @@ -799,6 +799,7 @@ namespace Framework.Constants PinfoChrPlayedtime = 853, PinfoChrMails = 854, PinfoChrLevelHigh = 871, + PinfoChrMapWithArea = 882, CharacterGenderMale = 855, CharacterGenderFemale = 856, @@ -828,7 +829,8 @@ namespace Framework.Constants // = 879, See PinfoChrRegmails AccountSecType = 880, RbacEmailRequired = 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) CommandExit = 1000, diff --git a/Source/Game/Chat/Commands/MiscCommands.cs b/Source/Game/Chat/Commands/MiscCommands.cs index 29e0fee8c..cebcaa8c1 100644 --- a/Source/Game/Chat/Commands/MiscCommands.cs +++ b/Source/Game/Chat/Commands/MiscCommands.cs @@ -1559,8 +1559,8 @@ namespace Game.Chat // Position data print uint mapId; uint areaId; - string areaName = handler.GetCypherString(CypherStrings.Unknown); - string zoneName = handler.GetCypherString(CypherStrings.Unknown); + string areaName = null; + string zoneName = null; // Guild data print variables defined so that they exist, but are not necessarily used ulong guildId = 0; @@ -1769,17 +1769,23 @@ namespace Game.Chat AreaTableRecord area = CliDB.AreaTableStorage.LookupByKey(areaId); if (area != null) { - areaName = area.AreaName[locale]; + zoneName = area.AreaName[locale]; AreaTableRecord zone = CliDB.AreaTableStorage.LookupByKey(area.ParentAreaID); if (zone != null) + { + areaName = zoneName; zoneName = zone.AreaName[locale]; + } } - if (target) - handler.SendSysMessage(CypherStrings.PinfoChrMap, map.MapName[locale], - (!zoneName.IsEmpty() ? zoneName : handler.GetCypherString(CypherStrings.Unknown)), - (!areaName.IsEmpty() ? areaName : handler.GetCypherString(CypherStrings.Unknown))); + if (zoneName == null) + zoneName = handler.GetCypherString(CypherStrings.Unknown); + + if (areaName != null) + handler.SendSysMessage(CypherStrings.PinfoChrMapWithArea, map.MapName[locale], zoneName, areaName); + else + handler.SendSysMessage(CypherStrings.PinfoChrMap, map.MapName[locale], zoneName); // Output XVII. - XVIX. if they are not empty if (!guildName.IsEmpty()) diff --git a/sql/updates/world/master/2021_10_21_00_world_2018_08_16_02_world_335.sql b/sql/updates/world/master/2021_10_21_00_world_2018_08_16_02_world_335.sql new file mode 100644 index 000000000..b6f3f34aa --- /dev/null +++ b/sql/updates/world/master/2021_10_21_00_world_2018_08_16_02_world_335.sql @@ -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');