diff options
Diffstat (limited to 'src/server/game')
| -rw-r--r-- | src/server/game/Globals/ObjectMgr.cpp | 16 | ||||
| -rw-r--r-- | src/server/game/Globals/ObjectMgr.h | 3 |
2 files changed, 7 insertions, 12 deletions
diff --git a/src/server/game/Globals/ObjectMgr.cpp b/src/server/game/Globals/ObjectMgr.cpp index 0c57e661bd3..0d314b39c6b 100644 --- a/src/server/game/Globals/ObjectMgr.cpp +++ b/src/server/game/Globals/ObjectMgr.cpp @@ -7800,12 +7800,10 @@ bool ObjectMgr::LoadTrinityStrings(char const* table, int32 min_value, int32 max data.Content.resize(1); ++count; - // 0 -> default, idx in to idx+1 - data.Content[0] = fields[1].GetCppString(); - + data.Default = fields[1].GetCppString(); for (uint8 i = 1; i < MAX_LOCALE; ++i) { - std::string str = fields[i+1].GetCppString(); + std::string str = fields[i + 1].GetCppString(); AddLocaleString(str, LocaleConstant(i), data.Content); } } while (result->NextRow()); @@ -7821,15 +7819,11 @@ bool ObjectMgr::LoadTrinityStrings(char const* table, int32 min_value, int32 max const char *ObjectMgr::GetTrinityString(int32 entry, int locale_idx) const { - // locale_idx == -1 -> default, locale_idx >= 0 in to idx+1 - // Content[0] always exist if exist TrinityStringLocale if (TrinityStringLocale const *msl = GetTrinityStringLocale(entry)) { - int idx = locale_idx + 1; - if (int(msl->Content.size()) > idx && !msl->Content[idx].empty()) - return msl->Content[idx].c_str(); - else - return msl->Content[0].c_str(); + std::string s = msl->Default; + GetLocaleString(msl->Content, locale_idx, s); + return s.c_str(); } if (entry > 0) diff --git a/src/server/game/Globals/ObjectMgr.h b/src/server/game/Globals/ObjectMgr.h index 2c20a9ca617..12f8b2b4a63 100644 --- a/src/server/game/Globals/ObjectMgr.h +++ b/src/server/game/Globals/ObjectMgr.h @@ -174,7 +174,8 @@ typedef UNORDERED_MAP<uint64/*(instance,guid) pair*/,time_t> RespawnTimes; struct TrinityStringLocale { - StringVector Content; // 0 -> default, i -> i-1 locale index + std::string Default; + StringVector Content; }; typedef std::map<uint32,uint32> CreatureLinkedRespawnMap; |
