Я пытаюсь решить проблему в дополнении «Спроси мистера Робота» для World of Warcraft.Что является альтернативой сломанному API-интерфейсу WoW API GetCurrentRegion()?
Код ошибки выглядит примерно так:
function AskMrRobot.ScanCharacter()
AmrDb.Region = AskMrRobot.regionNames[GetCurrentRegion()]
-- other stuff here
end
Проблема заключается в том, что GetCurrentRegion()
возвращает область клиента и не вошедший в регионе: У меня есть клиент ЕС вошел в системе на американскую области, которая имеет ЕС аналог с тем же именем (Area52). Чистый эффект заключается в том, что плагин возвращает существующую, но некорректную область («EU-Area52») вместо существующей и правильной («US-Area52»).
Эта проблема также задокументированы на gamepedia
Эта функция ненадежными для игроков, которые переключаются между регионами. Например, если игрок установит американский клиент и затем войдет в серверы ЕС, эта функция будет неправильно сообщать, что они все еще находятся в регионе США.
Итак, я хотел бы заменить GetCurrentRegion()
альтернативным вызовом или функцией, которая возвращает надежные данные.
Как это сделать?
Спасибо, я использовал библиотеку, чтобы исправить: https: //gist.github ,com/sklivvz/b2dc51c4547818e88672 – Sklivvz