/run if (not MSG_F) then --判断一下MSG_F框架是否已经创建过了
CreateFrame("Frame","MSG_F",UIParent); --创建MSG_F框架用来接收消息
end --if语句结束
if (MSG_E) then --这里用if是为了防止弹出Lua错误消息,判断一下第一条宏是否用过了
for i=1,8 do --循环8次
MSG_F:RegisterEvent(MSG_E[i]); --为MSG_F框架注册接收的MSG_E[i]消息类型;
end --for循环结束
end --if语句结束
MSG_F:SetScript( --为MSG_F设置事件执行的脚本
"OnEvent", --指定为哪个MSG_F事件设置脚本,这里设置为“OnEvent”,
function() --函数定义开始
if (EV_M) then --这里用if是为了防止弹出Lua错误消息,判断一下第二条宏是否用过了
EV_M("YELL"); --调用EV_M函数匹配接收到的消息,以“YELL”(大喊)的方式发送聊天信息
end --if语句结束
end --函数定义结束
); --SetScript结束。
上面这几段内容分别解释一下三个宏的功能,下面的内容建议大家尝试一下,因为一些人可能对这个宏实现的效果不够满意。
● 有些人觉得喊出声来不如只显示在自己的聊天记录中,那么可以把第二个宏改成这样:
/run function EV_M(type) for a,b,c in string.gmatch(arg1,"(.+)打断了(.+)的(.+)") do DEFAULT_CHAT_MESSAGE:AddMessage("["..a.."] 打断了 ["..b.."] 的 "..c);end end
● 有些人觉得这套宏不错,在竞技场中可以提醒大家谁打断了谁的施法,但是他却不希望竞技场中的敌人也看到这样的信息,怎么办呢?没关系,笔者在设计这套宏的时候早就考虑到了,把第三套宏改一下:
/run if (not MSG_F) then CreateFrame("Frame","MSG_F",UIParent);end if (MSG_E) then for i=1,8 do MSG_F:RegisterEvent(MSG_E[i]);end end MSG_F:SetScript("OnEvent",function() if (EV_M) then EV_M("RAID");end end);
2.4.1新天赋模拟器
插件下载
声望奖励
常用连接
任务大全
商业技能
联系我们