From bf4201c0f400c93f883671bc915ea9ab5b815d35 Mon Sep 17 00:00:00 2001 From: VladimirMangos Date: Sun, 31 May 2009 04:56:35 +0400 Subject: [PATCH] [7923] Search all available locale skill names in .learn all_recipes --- src/game/Level2.cpp | 22 +++++++++++++++++++++- src/shared/revision_nr.h | 2 +- 2 files changed, 22 insertions(+), 2 deletions(-) diff --git a/src/game/Level2.cpp b/src/game/Level2.cpp index 1e3bf8505..7cd09d8ce 100644 --- a/src/game/Level2.cpp +++ b/src/game/Level2.cpp @@ -3978,6 +3978,7 @@ bool ChatHandler::HandleLearnAllRecipesCommand(const char* args) wstrToLower( wnamepart ); uint32 classmask = m_session->GetPlayer()->getClassMask(); + std::string name; SkillLineEntry const *targetSkillInfo = NULL; @@ -3994,8 +3995,27 @@ bool ChatHandler::HandleLearnAllRecipesCommand(const char* args) int loc = GetSessionDbcLocale(); name = skillInfo->name[loc]; + if(name.empty()) + continue; - if(Utf8FitTo(name, wnamepart)) + if (!Utf8FitTo(name, wnamepart)) + { + loc = 0; + for(; loc < MAX_LOCALE; ++loc) + { + if(loc==GetSessionDbcLocale()) + continue; + + name = skillInfo->name[loc]; + if(name.empty()) + continue; + + if (Utf8FitTo(name, wnamepart)) + break; + } + } + + if(loc < MAX_LOCALE) { targetSkillInfo = skillInfo; break; diff --git a/src/shared/revision_nr.h b/src/shared/revision_nr.h index eb0538268..1e0822fde 100644 --- a/src/shared/revision_nr.h +++ b/src/shared/revision_nr.h @@ -1,4 +1,4 @@ #ifndef __REVISION_NR_H__ #define __REVISION_NR_H__ - #define REVISION_NR "7922" + #define REVISION_NR "7923" #endif // __REVISION_NR_H__