From e322c017ea62906af7bfc2839da1e6b0a23b5863 Mon Sep 17 00:00:00 2001 From: Alvin Zhu Date: Sun, 8 Jan 2023 03:21:47 +0800 Subject: [PATCH] fix(Core/Gossip): quest_greeting_locale doesn't work #10913 (#14532) * fix issue #10913 fix GetQuestGreetingLocale typeIndex just like GetQuestGreeting * Update ObjectMgr.h * fix Core/Gossip: gossipMenuLocale doesn't work * Revert "fix Core/Gossip: gossipMenuLocale doesn't work" This reverts commit f59f07d1504f21cf2ae1eaa37aa088100c352e3b. --- src/server/game/Globals/ObjectMgr.h | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/src/server/game/Globals/ObjectMgr.h b/src/server/game/Globals/ObjectMgr.h index 72e8488a0..41ca797c6 100644 --- a/src/server/game/Globals/ObjectMgr.h +++ b/src/server/game/Globals/ObjectMgr.h @@ -1263,7 +1263,21 @@ public: } [[nodiscard]] QuestGreetingLocale const* GetQuestGreetingLocale(TypeID type, uint32 id) const { - QuestGreetingLocaleContainer::const_iterator itr = _questGreetingLocaleStore.find(MAKE_PAIR32(type, id)); + uint32 typeIndex; + if (type == TYPEID_UNIT) + { + typeIndex = 0; + } + else if (type == TYPEID_GAMEOBJECT) + { + typeIndex = 1; + } + else + { + return nullptr; + } + + QuestGreetingLocaleContainer::const_iterator itr = _questGreetingLocaleStore.find(MAKE_PAIR32(typeIndex, id)); if (itr == _questGreetingLocaleStore.end()) return nullptr; return &itr->second; }