我想在最后一条消息中搜索几个字符串,然后用替换为其他字符串的字符串回显消息。
我搜索了多份文件,但没有找到最后一条信息。这是我问的第一个论坛,因为我已经有了一个帐户,所以没有真正的起点给你。
提前感谢!
魔兽世界API无法获取特定频道的最后聊天消息。您必须处理CHAT_MSG_CHANNEL
事件(请参阅事件处理(才能读取所有消息并存储最新消息。具体地,对于说或喊(喊(通道,分别存在CHAT_MSG_SAY
和CHAT_MSG_YELL
事件。
要做到这一点,您的插件需要拥有一个Frame,这些框架可以注册事件处理程序,您必须将从该处理程序收到的最后一条消息存储在脚本中的本地变量中(我们称之为last_message
(。然后,当您的另一段代码执行时,您可以读取last_message
变量:
local frame = CreateFrame("FRAME", "FooAddonFrame");
local last_message = nil;
frame:RegisterEvent("CHAT_MSG_CHANNEL");
local function eventHandler(self, event, ...)
-- Look up the arguments that are given to your specific event
-- and assign them to variables in order by retrieving them from
-- the `...` variable arguments
local msg, author, language, channel = ...
print("Hello World! Hello " .. event);
last_message = msg
end
frame:SetScript("OnEvent", eventHandler);