|
Форум Обсуждение аддонов Разработка аддонов WoW Аддон Autoreply (Аддон Autoreply) |
Аддон Autoreply |
Помогите пожалуйста разобраться с возникшей проблемой. В общем суть в том, что аддон не выводит в чат русские буквы, только английские.
Код local Answer_EventFrame = CreateFrame("Frame") Answer_EventFrame:RegisterEvent("CHAT_MSG_WHISPER") local function OnEvent(self, event, msg, sender, ...) if (event == "CHAT_MSG_WHISPER" and msg == "hello") then SendChatMessage("I'm very bussy man. We will speak later", "WHISPER", nil, sender) end end Answer_EventFrame:SetScript("OnEvent", OnEvent) Аддон должен отвечать на виспы от других игроков заготовленными фразами. Причем он также не срабатывает, если ты пишешь слово рус. буквами, т.е. если я заменю hello на привет в if (event == "CHAT_MSG_WHISPER" and msg == "привет") - нулевой эффект. Буду очень благодарен за помощь). P.S.Вопрос касательно темы: как сделать так, что бы аддон отвечал на любые виспы от игроков а не только на опред. фразы?
Сообщение # 1 написано 15.07.2015 в 23:04
|
Доброго времени суток Buba123net,
Причем он также не срабатывает, если ты пишешь слово рус. буквами, т.е. если я заменю hello на привет в if (event == "CHAT_MSG_WHISPER" and msg == "привет") - нулевой эффект. P.S.Вопрос касательно темы: как сделать так, что бы аддон отвечал на любые виспы от игроков а не только на опред. фразы? Код if (event == "CHAT_MSG_WHISPER" and msg == "hello") then Код if event == "CHAT_MSG_WHISPER" then |
Kelwin, спасибо что помогли, с текстом разобрался. А вот на счет if (event == "CHAT_MSG_WHISPER" and msg == "hello") then я убирал msg, но в таком случае перс начинает цикл ответов заготовленной фразой, пока я не получаю мут, не знаете почему так?
P.S. Адд без каких либо доп файлов - 1 lua и 1 toc |
Buba123net, это происходит только когда Вы пишете сам себе. Попробуйте использовать следующий код, чтобы избежать появление бесконечных циклов:
Вариант №1. Аддон не будет отвечать на все сообщения от себя. Код local Answer_EventFrame = CreateFrame("Frame") Answer_EventFrame:RegisterEvent("CHAT_MSG_WHISPER") local function OnEvent(self, event, msg, sender, ...) if sender == GetUnitName("player") then return end if event == "CHAT_MSG_WHISPER" then SendChatMessage("I'm very busy man. We will speak later", "WHISPER", nil, sender) end end Answer_EventFrame:SetScript("OnEvent", OnEvent) Вариант №2. Аддон не будет отвечать на собственную фразу "I'm very busy man. We will speak later", предотвращая таким образом появление бесконечных циклов. Код local Answer_EventFrame = CreateFrame("Frame") Answer_EventFrame:RegisterEvent("CHAT_MSG_WHISPER") local msgText = "I'm very busy man. We will speak later" local function OnEvent(self, event, msg, sender, ...) if (sender == GetUnitName("player") and msg == msgText) then return end if event == "CHAT_MSG_WHISPER" then SendChatMessage(msgText, "WHISPER", nil, sender) end end Answer_EventFrame:SetScript("OnEvent", OnEvent) |
| |||
| |||