aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authormegamage <none@none>2009-05-31 16:24:56 -0500
committermegamage <none@none>2009-05-31 16:24:56 -0500
commit72cab37bcc434afd3dcae83acba14380cf0a94cb (patch)
tree136b28aa67d056c147b44fb3ca56e25c7f6f9f03 /src
parent067cbec40d33b865b30299368534ae0cd673f336 (diff)
[7923] Search all available locale skill names in .learn all_recipes Author: VladimirMangos
--HG-- branch : trunk
Diffstat (limited to 'src')
-rw-r--r--src/game/Level2.cpp22
1 files changed, 21 insertions, 1 deletions
diff --git a/src/game/Level2.cpp b/src/game/Level2.cpp
index 70baff4f42e..31834fce8ea 100644
--- a/src/game/Level2.cpp
+++ b/src/game/Level2.cpp
@@ -3971,6 +3971,7 @@ bool ChatHandler::HandleLearnAllRecipesCommand(const char* args)
wstrToLower( wnamepart );
uint32 classmask = m_session->GetPlayer()->getClassMask();
+
std::string name;
SkillLineEntry const *targetSkillInfo = NULL;
@@ -3987,8 +3988,27 @@ bool ChatHandler::HandleLearnAllRecipesCommand(const char* args)
int loc = GetSessionDbcLocale();
name = skillInfo->name[loc];
+ if(name.empty())
+ continue;
+
+ 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(Utf8FitTo(name, wnamepart))
+ if(loc < MAX_LOCALE)
{
targetSkillInfo = skillInfo;
break;