From 9768cfca3a86b22f8ce9b383d05df4ad9d0d217f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A4=A9=E9=B9=BF?= <18535853+PkllonG@users.noreply.github.com> Date: Sat, 8 Feb 2025 00:52:56 +0800 Subject: [PATCH] fix(Core): Fix After PR#21213 Crash (#21327) --- src/server/game/Entities/Player/PlayerStorage.cpp | 10 +++++----- src/server/game/Maps/MapMgr.cpp | 2 +- src/server/game/Server/WorldSession.h | 2 +- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/server/game/Entities/Player/PlayerStorage.cpp b/src/server/game/Entities/Player/PlayerStorage.cpp index ff76211dd1a5cf..875cf58b42ae49 100644 --- a/src/server/game/Entities/Player/PlayerStorage.cpp +++ b/src/server/game/Entities/Player/PlayerStorage.cpp @@ -6724,7 +6724,7 @@ bool Player::Satisfy(DungeonProgressionRequirements const* ar, uint32 target_map if (sDisableMgr->IsDisabledFor(DISABLE_TYPE_MAP, target_map, this)) { - GetSession()->SendAreaTriggerMessage("{}", GetSession()->GetAcoreString(LANG_INSTANCE_CLOSED)); + GetSession()->SendAreaTriggerMessage(LANG_INSTANCE_CLOSED); return false; } @@ -6862,11 +6862,11 @@ bool Player::Satisfy(DungeonProgressionRequirements const* ar, uint32 target_map { ObjectMgr::GetLocaleString(il->Name, loc_idx, name); } - GetSession()->SendAreaTriggerMessage(GetSession()->GetAcoreString(LANG_LEVEL_MINREQUIRED_AND_ITEM), ar->levelMin, name.c_str()); + GetSession()->SendAreaTriggerMessage(LANG_LEVEL_MINREQUIRED_AND_ITEM, ar->levelMin, name); } else if (LevelMin) { - GetSession()->SendAreaTriggerMessage(GetSession()->GetAcoreString(LANG_LEVEL_MINREQUIRED), LevelMin); + GetSession()->SendAreaTriggerMessage(LANG_LEVEL_MINREQUIRED, LevelMin); } else if (ilvlRequirementNotMet) { @@ -6924,11 +6924,11 @@ bool Player::Satisfy(DungeonProgressionRequirements const* ar, uint32 target_map if (LevelMin) { - GetSession()->SendAreaTriggerMessage(GetSession()->GetAcoreString(LANG_LEVEL_MINREQUIRED), LevelMin); + GetSession()->SendAreaTriggerMessage(LANG_LEVEL_MINREQUIRED, LevelMin); } else if (LevelMax) { - GetSession()->SendAreaTriggerMessage(GetSession()->GetAcoreString(LANG_ACCESS_REQUIREMENT_MAX_LEVEL), LevelMax); + GetSession()->SendAreaTriggerMessage(LANG_ACCESS_REQUIREMENT_MAX_LEVEL, LevelMax); } else if (mapDiff->hasErrorMessage && !errorAlreadyPrinted) { diff --git a/src/server/game/Maps/MapMgr.cpp b/src/server/game/Maps/MapMgr.cpp index 423f5ac5d8d5f0..3a52e5fe389620 100644 --- a/src/server/game/Maps/MapMgr.cpp +++ b/src/server/game/Maps/MapMgr.cpp @@ -167,7 +167,7 @@ Map::EnterState MapMgr::PlayerCannotEnter(uint32 mapid, Player* player, bool log { // probably there must be special opcode, because client has this string constant in GlobalStrings.lua /// @todo: this is not a good place to send the message - player->GetSession()->SendAreaTriggerMessage(player->GetSession()->GetAcoreString(LANG_INSTANCE_RAID_GROUP_ONLY), mapName); + player->GetSession()->SendAreaTriggerMessage(LANG_INSTANCE_RAID_GROUP_ONLY, mapName); LOG_DEBUG("maps", "MAP: Player '{}' must be in a raid group to enter instance '{}'", player->GetName(), mapName); return Map::CANNOT_ENTER_NOT_IN_RAID; } diff --git a/src/server/game/Server/WorldSession.h b/src/server/game/Server/WorldSession.h index f713b9372a58cd..4f1314ce36b1fa 100644 --- a/src/server/game/Server/WorldSession.h +++ b/src/server/game/Server/WorldSession.h @@ -352,7 +352,7 @@ class WorldSession void SendAreaTriggerMessage(std::string_view str); template - void SendAreaTriggerMessage(std::string fmt, Args&&... args) + void SendAreaTriggerMessage(char const* fmt, Args&&... args) { if (!m_playerLoading) SendAreaTriggerMessage(Acore::StringFormat(fmt, std::forward(args)...));