魔兽世界编程宝典:World of Warcraft Addons完全参考手册
¥
70
5.9折
¥
118
八五品
库存2件
作者[美]怀特黑德 著;杨柏林 译
出版社清华大学出版社
出版时间2010-06
版次1
装帧平装
货号5号1层
上书时间2024-09-13
商品详情
- 品相描述:八五品
图书标准信息
-
作者
[美]怀特黑德 著;杨柏林 译
-
出版社
清华大学出版社
-
出版时间
2010-06
-
版次
1
-
ISBN
9787302222392
-
定价
118.00元
-
装帧
平装
-
开本
16开
-
纸张
胶版纸
-
页数
870页
-
字数
1351千字
-
正文语种
简体中文,英语
- 【内容简介】
-
阅读完本书,您将学会如何对魔兽世界界面进行自定义修改。如果您初学编程,将从本书学习到Lua和XML的基础知识,以及如何开始编写自己的第一个插件。如果您已经熟悉一些原始插件,那么可以直接跳到本书的第Ⅲ第Ⅳ部分,使用模板、函数钩、自定义图形、状态标题等。本书有助于您发布自己的插件,使WoW更加有趣。
本书是创建WoW插件的指南和参考手册。本书分为5部分,其主题的复杂程度逐渐由低到高。第Ⅰ部分介绍了Lua和XML,使读者快速地上手这两门语言,便于创建插件。第Ⅱ部分讨论了插件的初步构成,以及事件驱动(event-driven)的魔兽世界插件编程的基本概念。在本部分,读者将创建自己的第一个插件,并熟悉WoW中的常用API。第Ⅲ部分通过从头到尾实现一些插件,将读者引入更加高级的主题中。第Ⅳ部分为整个API的完备参考,包括函数、工具集、事件以及安全模板。第Ⅴ部分为附录。
- 【作者简介】
-
JamesWhiteheadⅡ,是许多流行的魔兽世界插件的作者,他的作品有PerfectRaid、Clique、LightHeaded、T0mTom以及给出的许多其他小插件。从魔兽世界Beta版问世起,他就开始开发插件,并且一直活跃在魔兽世界UI论坛和Lua社区中。当他正在用自己的众多账号中的一个玩魔兽世界的时候,您可能会在游戏服务器的Stomrage(US)区中遇到他,或者在Ravencrest(EU)区中看到他正在兴奋地练级。Jim毕业于雪城大学(SyracuseUniversity),他在那里获得了计算机专业的学士和硕士学位。现在,他正在英国牛津大学攻读博士学位,同时他也是该校计算实验室(ComputingLaboratoⅣ1的助教。在空闲时间里,他喜欢代表伍斯特学院(WorcesterCollege)参加划船比赛,或者与朋友们一起野外探险。
BryanMclemore,从2005年初就成为魔兽世界UI社区的一名成员。在开发了KCAutoRepair插件后,他成为AceProject和WowAce.corn的创始人之一,以Kaelten的ID与BrentMiller(魔兽世界UI社区的注册账号)共同工作。在加入Brent的官方部门后,Bryan开始将越来越多的时间花在WowAce上,而不是开发自己的插件上;然而,他仍然坚持继续开发OneBag和KCItems插件。闲暇时,他一般在美国服务器上的Whisperwind区中玩魔兽世界。
另外,在他的其他空闲时间里,他还负责开发Ace3,并且专注于开发自己的插件,同时维护几个相关的网站。Bryan最近与妻子和女儿搬到加利福尼亚州,开始从事wleb开发和系统管理的工作。他们现在居住在旧金山市。
MatthewOrlando,是诸多魔兽世界插件的作者,这些插件包括BuyEmAll,CogsBar和MacroTalk。他具有13年的编程经历,并从2006年初开始活跃于插件社区中。除了精通Lua语言和魔兽世界API外,他还维护着“CogwheelsCompleteMacroGuide”,这是一个关于魔兽世界宏指南的重要论坛。
Matthew目前与妻子Juliella居住在加利福尼亚州的塞巴斯玻(Sebastop01)市。他在KistlerVineyards公司从事客户数据服务、数据库编程和网站开发等方面的工作。
- 【目录】
-
第1部分学习编程
第1章关于魔兽世界的编程
1.1定制用户界面
1.1.1插件是如何工作的
1.1.2插件能够做什么
1.2Lua新手上路
1.2.1下载和安装Wow[ma
1.2.2在网上使用Lua
1.2.3下载并安装Lua解释器
1.3探究您的Lua解释器
第2章探讨Lua基础知识
2.1使用Lua解释器
2.1.1运行命令
2.1.2错误信息的理解
2.1.3使用历史信息来做改变
2.1.4退出解释器
2.2处理数字
2.2.1基本算术运算
2.2.2科学记数法
2.2.3十六进制表示法
2.2.4理解浮点
2.3理解值和变量
2.3.1探讨值和它们的类型
2.3.2使用变量
2.4使用字符串
2.4.1比较字符串
2.42多个字符串的连接
2.4.3将数字转换成字符串
2.4.4将字符串转换成数字
2.4.5引用字符串
2.4.6转义特殊的字符
2.4.7获得字符串的长度
2.5布尔值和运算符
2.5.1使用and运算符
2.5.2or运算符的使用
2.513not运算符的使用
2.5.4理解nil值
2.6探讨作用域
2.6.1块(Block)
2.6.2组块(Chunk)
2.7小结
第3章基本的函数和控制结构
3.1使用函数
3.1.1创建函数
3.1.2局部函数
3.1.3函数的参数和返回值
3.1.4函数作为Lua值
3.2用if语句进行判断
3.2.1简单的条件
3.2.2复杂的表达式
3.2.3扩展的条件语句
3.2.4显示个人问候信息
3.3用while语句来重复动作
3.3.1计算阶乘
3.3.2while和repeat之间的差异
3.4用数值执行for循环
3.4.1计算阶乘
3.4.2循环条件的求值
3.4.3循环中的变量作用域
3.5小结
第4章使用表
4.1用表来存储数据
4.1.1创建和索引表
4.1.2从表中清除元素
4.1.3字符串关键字的快捷方式
4.1.4创建有内容的表
4.2把表当作数组使用
4.2.1创建数组
4.2.2获取数组的长度
4.2.3在数组中添加元素
4.2.4从数组中删除元素
4.2.5对数组中的元素排序
4.3用名称空间使用表
4.3.1创建util名称空间
4.3.2向util中添加函数
4.4表的面向对象编程
4.4.1创建非面向对象计数器
4.4.2把表作为简单的对象
4.4.3用冒号调用对象方法
4.4.4用冒号定义函数
4.4.5创建更佳的计数器
4.5利用元表对表进行扩展
4.5.1添加元表
4.5.2定义元方法
4.5.3旁路元表
4.6小结
第5章高级函数和控制结构
5.1多值返回
5.2将十六进制转换成RGB
5.3指定多个值
5.4返回值丢失
5.5W0W中的多个返回值
5.6接受可变数目的参数
5.7声明变参函数
5.8结合select()函数使用
5.9范型for循环和迭代器
5.10范型for语句的语法
5.11遍历表的数组部分
5.12遍历完整的表
5.13表的清除
5.14其他的迭代器
5.15对表的数组排序
5.16定义样例数据
5.17默认的排序顺序
5.18创建比较函数
5.19创建更复杂的比较函数
5.20小结
第6章Lua标准库
6.1表库
6.1.1table.concat(table,sep[,i[,j]]])
6.1.2table.insert(table,[pos,]value)
6.1.3table.maxn(table)
6.1.4table.remove(table[,pos])
6.1.5table.sort(1xtble[,comp])
6.2数学函数库
6.3字符串函数
6.4格式化新字符串
6.5模式匹配
6.5.1字符类型
6.5.2模式选项
6.5.3模式捕获
6.5.4模式锚点
6.5.5模式的例子
6.6模式匹配函数
6.7Lua在WoW插件中的补充
6.8函数别名
6.9小结
第7章学习XML
7.1XML——一种标记语言
7.1.1XML与HTML的关系
7.1.2XML的组件
7.113创建规范的XML
7.2验证XML文档
7.2.1规范定义的样例
7.2.2XMIL文件的例子
7.2.3魔兽世界中的XML
7.2.4使用GradientType
7.3小结
第Ⅱ部分魔兽世界编程
第8章魔兽世界编程概述
8.1游戏中运行和测试代码
8.1.1安装
8.1.2使用/script和/run
8.1.3显示输出
8.2在游戏中编辑代码
8.2.1TinyPad
8.2.2Omnibus
8.2.3WowLlla
8.3编写自定义print()函数
8.4插件和脚本的局限性
8.5用Blizzard插件编写资源
8.5.1用户界面自定义工具
8.5.2用户界面和宏论坛
8.6论坛资源
8.6.1WowwiKI
8.6.2魔兽版本监视器
8.7小结
第9章插件解析
9.1开发属于您自己的插件文件夹
9.1.1暴雪的插件
9.1.2自定义插件
9.2插件组件和文件
9.2.1内容表格文件(.toc)
9.2.2Lua脚本文件
9.2.3XIL文件
9.2.4媒体文件
9.3本地化您的插件
9.3.1可用的本地语言
9.3.2本地化的原因
9.3.3鼓励玩家建议
9.3.4实现本地化
9.4创建插件框架
9.4.1为插件命名(创建目录)
9.4.2创建.toc文件
9.4.3创建框架.xml文件
9.5使用外部库
9.6小结
第10章在XML中创建窗体
10.1了解UI对象
10.1.1为对象进行命名
10.1.2指定父对象
10.1.3设置对象尺寸
10.1.4锚定对象
10.1.5将窗体和图形元素分层
10.1.6一般属性
10.2创建纹理
10.2.1添加颜色
10.2.2添加渐变效果
10.2.3添加图形元素
10.3使用字体字符串创建文本
10.3.1使用模板
10.3.2使用的例子
10.3.3进一步自定义
10.4探讨窗体类型
10.4.1按钮(Button)
10.4.2复选按钮(CheckButton)
10.4.3颜色选择ColorSelect)
10.4.4编辑框(Editbox)
10.4.5游戏工具提示(GalneTooltip)
10.4.6消息窗体(MessageFrame)
10.4.7小地图(Minimap)
10.4.8模型(Modeel)
10.4.9滚动信息窗体(scrollingMessageFrame、)
10.4.11简单的HTML窗体
10.4.12滑动器(Slider)
10.4.13状态栏(StatusBar)
10.4.14飞行路线窗体
10.5小结
第11章向XML窗体中添加行为
11.1理解事件和脚本
11.1.1窗体脚本
11.1.2游戏事件
11.2使用脚本响应窗体事件
11.2.1和
11.2.2
11.2.3
11.2.4
11.2.5
11.3可用的窗体脚本
11.4使用窗体方法改变窗体
11.4.1常用方法
11.4.2指定类型的函数
11.5创建并使用模板
11.5.1模板有用的原因
11.5.2新建XML模板
11.5.3使用XML模板
11.6使用默认UI工具集模板
11.7小结
第12章创建您的第一个插件:CombatTracker
12.1定义规格说明
12.1.1combatTracker用户要求
12.1.2找准游戏事件
12.2创建插件架构
12.3定义CombatTracker的XML窗体
12.4测试CombatTrackerFrame
12.5向CombatTrackerFrame添加操作脚本
12.5.1
12.5.2
12.5.3
12.5.4
12.5.5
12.6为CombatTracken.lua添加函数
12.6.1CombatTracker-OnLoad(frame)
12.6.2CombatTracker-OnEvent(frame,event.)
12.6.3CombatTrackerReportDPS0
12.7测试CombatTracker
12.7.1窗体拖拽
12.7.2右击报告:第1部分
12.7.3测试战斗跟踪
12.7.4右击报告:第Ⅱ部分
12.8小结
第13章运用魔兽世界API
13.1理解魔兽世界API
13.1.1常规API
13.1.2类库API
13.1.3FrameXML函数
13.1.4受保护函数
13.1.5单位函数的使用与关闭
13.2创建简单的单位窗体
13.2.1创建窗体
13.2.2添加数据域
13.2.3设定窗体事件处理程序
13.3使用API
13.3.1显示和隐藏窗体
13.3.2实现简单的更新函数
13.3.3显示生命和法力值
13.3.4更新敌对信息
13.4小结
第Ⅲ部分高级插件技术
第15章利用编程模板
第16章脱离XML编写插件
第17章使用安全模板
第18章创建命令
第19章用函数钩改变已有行为
第20章创建自定义图形界面
第21章使窗体移动
第22章创建滚动窗体
第23章创建下拉菜单
第24章工具提示
第25章使用状态标题
第26章驱动状态改变
第27章利用组模板创建单位窗体
第Ⅳ部分参考文献
第28章API参考文献
第29章API目录
第30章事件参考
第31章工具集参考
第Ⅴ部分附录
附录A发布插件
附录B利用版本控制系统跟踪历史记录
附录C最好的代码风格
附录D避免常见的错误
附录E使用插件库
附录F作者和插件社区
附录G词汇表
点击展开
点击收起
— 没有更多了 —
以下为对购买帮助不大的评价