魔兽插件程序员指南

程序员快速入手指南作者:炽火Zero℃原文发表于:猫扑魔兽板块实用资料区引言本文将以一般的软件编程的眼光审视魔兽插件。剥去其难解的外皮,让你有个清晰的大致了解。“一针见血”是技术性教学文章的最高境界——炽火魔兽插件的架构插件工程——每个插件就是一个项目(或称为工程)。目录位置:魔兽目录\Interface\Addons\项目名\工程描述——即后缀名为Toc的文件。描述工程的必要信息,也是项目载入时的总入口。屏幕布局——布局描述使用XML文件。使用各种标签代表特定对象(控件),并描述相互位置及各种特征属性。功能脚本——脚本文件使用LUA语言。使用WoW提供的API函数编写代码实现各种具体操作。TOC——工程描述文件后缀名为toc的文件就是工程文件,包含工程的基本信息。主要包含以下内容:1##Interface:适用的魔兽版本号2##Title:显示的标题(默认语言)3##Notes:显示的说明(默认语言)4##Title-zhCN:特定语言的标题(简体中文)5##Notes-zhCN:特定语言的说明(简体中文)6##Author:作者7##Version:版本8##Dependencies:依赖的插件9##RequiredDeps:必须依赖的其他插件,与上项作用相同10##OptionalDeps:可选倚赖,一般为库.11##SavedVariables:统一存放的变量12##SavedVariablesPerCharacter:按角色存放的变量13##LoadOnDemand:1插件在启用状态下不被加载,必须在游戏内由另一个插件LoadAddOn()调用加载,通常为存放数据用.14##LoadWith:当指定插件加载时才加载,前提是LoadOnDemand15##DefaultState:disabled默认状态16##Secure:安全,只有暴雪插件才能被标记为安全17##LoadManagers:加载管理器,通常是另一个插件(例子:AddonLoader,DBM)18##X-Email:如题19##X-*:以X-开头的标记通常为自定义标记,请遵守这个准则.20#注释1dklasjfkasdj21Script.lua--脚本文件22%注释2dskajfklasdjfklsdaj23Layout.xml--布局文件‘#’和‘%’为行注释符号。而以##开头的注释行可就不光是好看的了,这些都是插件的工程描述标记,要是不注意插件根本就不会载入。示例中彩色的标记表示标准标记,每个标准标记都有特定功能。其它eMail,Author等为扩展标记,只有注释功能。工程标记之后的部分为包含文件列表,脚本文件和布局文件,数量随意,但每种至少要有一个:一个lua或一个xml。包含文件列表中的顺序对应着载入顺序,非常要紧!!!!请将所有文件保存为UTF-8NOBOM,否则有可能会导致读取错误.可以用专业文本编辑器修改编码及换行符,如果你不知道什么是文本编辑器,可以使用开源的Notepad++.建议你多下几个插件,打开看看,参考一下。XML——屏幕布局描述文件在魔兽插件中使用XML来描述UI的屏幕布局。注释符号:<!--注释内容-->。如果要写中文注释,必须在XML文件开头添加一行:<?xmlversion="1.0"encoding="UTF-8"?>XML文件主要内容一个XML文件往往包含以下内容:<!--Ui标签是包含所有其它标签的根标签--><Uixmlns="http://www.blizzard.com/wow/ui/"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://www.blizzard.com/wow/ui/C:\Projects\WoW\Bin\Interface\FrameXML\UI.xsd"><Scriptfile="localization.lua"/><!--在此载入用于汉化的lua文件--><Framename="zBar"parent="UIParent"><!--一个Frame框架--><Scripts><!--脚本部分,用于处理事件--><OnLoad>zBar_OnLoad();</OnLoad><OnEvent>zBar_OnEvent(event);</OnEvent></Scripts></Frame></Ui>Ui标签<Ui>是最上级标签。其中的schema用来语法检查,如果你的XML编辑器支持还可以用来代码提示。否则对我们来说用处不大。可以简化为:<Uixmlns="http://www.blizzard.com/wow/ui/"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"></Ui>或者更加简化,不太规范但是可用:<Ui>布局内容</Ui>Script标签在Ui标签中最先包含的往往是<Scriptfile="lua文件名"/>表示在此处载入某lua文件。注意这里也有顺序哦,如果发现变量、函数不存在,检查一下看是不是顺序问题。这样一来我们有了两种方法载入lua文件。在xml中载入lua实际上不是非如此不可的,有时候没必要用xml的就直接在toc中放个lua,把xml省掉。这样做你必须在l...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供参考,付费前请自行鉴别。
3、如文档内容存在侵犯商业秘密、侵犯著作权等,请点击“举报”。

常见问题具体如下:

1、问:已经付过费的文档可以多次下载吗?

      答:可以。登陆您已经付过费的账号,付过费的文档可以免费进行多次下载。

2、问:已经付过费的文档不知下载到什么地方去了?

     答:电脑端-浏览器下载列表里可以找到;手机端-文件管理或下载里可以找到。

            如以上两种方式都没有找到,请提供您的交易单号或截图及接收文档的邮箱等有效信息,发送到客服邮箱,客服经核实后,会将您已经付过费的文档即时发到您邮箱。

注:微信交易号是以“420000”开头的28位数字;

       支付宝交易号是以“2024XXXX”交易日期开头的28位数字。

客服邮箱:

biganzikefu@outlook.com

所有的文档都被视为“模板”,用于写作参考,下载前须认真查看,确认无误后再购买;

文档大部份都是可以预览的,笔杆子文库无法对文档的真实性、完整性、准确性以及专业性等问题提供审核和保证,请慎重购买;

文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为依据;

如果您还有什么不清楚的或需要我们协助,可以联系客服邮箱:

biganzikefu@outlook.com

常见问题具体如下:

1、问:已经付过费的文档可以多次下载吗?

      答:可以。登陆您已经付过费的账号,付过费的文档可以免费进行多次下载。

2、问:已经付过费的文档不知下载到什么地方去了?

     答:电脑端-浏览器下载列表里可以找到;手机端-文件管理或下载里可以找到。

            如以上两种方式都没有找到,请提供您的交易单号或截图及接收文档的邮箱等有效信息,发送到客服邮箱,客服经核实后,会将您已经付过费的文档即时发到您邮箱。

注:微信交易号是以“420000”开头的28位数字;

       支付宝交易号是以“2024XXXX”交易日期开头的28位数字。

笔杆子文秘
机构认证
内容提供者

为您提供优质文档,供您参考!

确认删除?