加摩尔会保护大家的!一个逗比魔兽世界插件!

Written on August 1, 2014 View on GitHub

源码在此:[url]https://github.com/yangyuan/wowaddon-gamon[/url]

基本概念

语言是忒么 LUA 哟,作为一个内嵌式语言 LUA 还是很好用的。

TOC

TOC 是 WOW 插件的入口,必须跟插件目录同名。里面是一些 META 参数,以及所有入口 LUA 文件名。 ## Interface: 60000 ## Title: Gamon ## Notes: ……

Gamon.lua
Font.lua
Interrupt.lua
Collaboration.lua 看上去,WOW 会首先访问你的 TOC 文件,阅读 META 参数之后,依次读取 LUA 文件。 Interface 是版本号,貌似格式是 0 00 00。

Frame

Frame 就像 COM 里的 Interface,像 Unity3D 里的 GameObject。 WOW 插件的全局函数非常少,大部分操作都是被动的,无论是监听消息,还是显示界面元素,你都需要给 WOW 一个对象,这个对象就是 Frame。 比如你要监听 login 事件,你就需要 CreateFrame,然后 Frame::RegisterEvent("PLAYER_LOGIN") 最后 SetScript("OnEvent",...)

SlashCmd

SlashCmd 就是用在处理你在聊天区输入 /xxx 的命令。SlashCmdList 本身是跟全局对象数组,你只需要在这个数组里添加一个就可以。但是你却需要额外为这个元素定义全局的命令名。 SlashCmdList[“GAMON”] = function(msg, editbox)

end
SLASH_GAMON1 = "/gamon"
SLASH_GAMON2 = "/wtf"

PENDING