标题：ActionScript 3.0游戏编程
基本信息
原书名：ActionScript 3.0 Game Programming University(Second Edition) 
作者： (美)罗森维格(Rosenzweig,G.)  [1]译者： 胡蓉 张东宁 朱栗华 
丛书名： 图灵程序设计丛书 
出版社：人民邮电出版社 
ISBN：9787115272898
上架时间：2012-1-18
出版日期：2012 年1月
开本：16开
页码：1
版次：1-1
所属分类： 计算机
内容简介
《actionscript 3.0游戏编程(第2版)》是flash 游戏开发经典书籍的第2 版。书中通过25 个完整的游戏示例教授actionscript 编程，其中有9 个全新游戏，用于讲述更多关于actionscript 3.0 的技巧。示例中的代码亦可用于构建非游戏类项目。本书还讲述了如何结合使用flash 和actionscript 3.0，如何使用actionscript 构建基本的游戏框架。
本书适用于所有的flash 游戏开发人员。 
作译者
Gary Rosenzweig 资深Flash游戏专家、CleverMedia公司创始人和CEO。CleverMedia是一家专注于游戏开发的公司，在过去的15年里，共开发了 300多个基于Web的Flash和Shockwave游戏。这些游戏可以在该公司旗下的主要游戏网站上找到。开发游 戏之余，Gary喜欢写作，乐于与人分享学习所得。除本书外，他还著有Macromedia Flash MX ActionScript for Fun & Games和Sams Teach Yourself Flash MX ActionScript in 24 Hours等书。
胡蓉 现居住于上海，曾是Flash开发社区9ria的咨.
目录
《actionscript 3.0游戏编程(第2版)》 
第1 章 使用flash 和actionscript 3.0 　　1 
1.1 什么是actionscript 3.0　　1 
1.2 创建简单的actionscript 程序　　2 
1.2.1 trace 的简单用法　　3 
1.2.2 创建屏幕输出　　5 
1.2.3 我们的第一个actionscript 3.0类 　6 
1.3 使用flash cs5 　　9 
1.3.1 显示对象和显示列表　　9 
1.3.2 舞台　　9 
1.3.3 库　　10 
1.3.4 时间轴　　10 
1.4 编辑actionscript 代码　　11 
1.5 actionscript 游戏编程策略　　13 
1.5.1 单类方法　　　14 
1.5.2 任务细分法　　　14 
1.5.3 良好的编程规范　　14 
1.6 actionscript 的基本概念　　16 
1.6.1 创建和使用变量　　17 
1.6.2 条件语句　　18 
.1.6.3 循环　　19 
1.6.4 函数　　19 
1.7 测试及调试　　20 
1.7.1 bug 类型　　20 
1.7.2 测试方法　　20 
1.7.3 使用调试器　　21 
1.8 发布游戏　　23 
1.8.1 格式　　23 
1.8.2 flash 　　24 
1.8.3 html　　25 
1.9 actionscript 游戏编程检查清单　　26 
1.9.1 发布和文档设置　　26 
1.9.2 类、函数和变量的名称　　27 
1.9.3 运行时问题　　28 
1.9.4 测试问题　　28 
第2 章 actionscript 游戏元素　　30 
2.1 创建可视对象　　30 
2.1.1 使用影片剪辑　　31 
2.1.2 创建按钮　　32 
2.1.3 绘制图形　　35 
2.1.4 绘制文本　　37 
2.1.5 创建链接文本　　39 
2.1.6 创建sprite 对象组　　40 
2.1.7 设置sprite 的深度　　42 
2.2 接收用户输入　　42 
2.2.1 鼠标输入　　43 
2.2.2 键盘输入　　44 
2.2.3 文本输入　　45 
2.3 创建动画　　46 
2.3.1 sprite 运动　　46 
2.3.2 使用timer　　48 
2.3.3 基于时间的动画　　49 
2.3.4 基于物理的动画　　49 
2.4 设计用户交互　　51 
2.4.1 移动sprite 　　51 
2.4.2 拖曳sprite 　　53 
2.4.3 碰撞检测　　54 
2.5 获取外部数据　　55 
2.5.1 外部变量　　55 
2.5.2 加载数据　　57 
2.5.3 存储本地数据　　57 
2.6 各类游戏元素　　58 
2.6.1 定制光标　　58 
2.6.2 播放声音　　60 
2.6.3 加载进程界面　　 61 
2.6.4 随机数　　62 
2.6.5 数组重组　　63 
2.6.6 显示时间　　64 
2.6.7 系统数据　　64 
2.6.8 游戏盗版及保护问题　　 65 
第3 章 基本游戏框架：配对游戏　　67 
3.1 放置可交互的元素　　68 
3.1.1 创建游戏部件的方法　　 68 
3.1.2 设置flash 影片　　 69 
3.1.3 创建基本actionscript 类　　70 
3.1.4 使用常量实现更好的编程　　73 
3.1.5 随机分配卡片　　 74 
3.2 游戏开始　　76 
3.2.1 添加鼠标侦听器　　 76 
3.2.2 建立游戏逻辑　　 77 
3.2.3 检测游戏结束　　 81 
3.3 封装游戏　　83 
3.3.1 创建游戏影片剪辑　　 83 
3.3.2 添加介绍界面　　 84 
3.3.3 添加play again 按钮　　 86 
3.4 添加得分和时间　　 86 
3.4.1 添加得分　　 87 
3.4.2 添加时间　　 89 
3.4.3 显示时间　　 90 
3.4.4 游戏结束后显示所得分数和时间　　91 
3.5 添加游戏效果　　93 
3.5.1 卡片翻转动画　　 93 
3.5.2 有限的卡片浏览时间　　 95 
3.5.3 声音效果　　 96 
3.6 修改游戏　　98 
第4 章 脑力游戏：记忆和推理　　99 
4.1 数组和数据对象　　 99 
4.1.1 数组　　100 
4.1.2 数据对象　　 101 
4.1.3 数据对象数组　　 102 
4.2 记忆游戏　　102 
4.2.1 准备影片　　 103 
4.2.2 编程策略　　 105 
4.2.3 类定义　　 105 
4.2.4 设置文本、灯和音频　　106 
4.2.5 播放序列　　 109 
4.2.6 开关灯　　 110 
4.2.7 接收并检查玩家输入　　 111 
4.2.8 修改游戏　　 113 
4.3 推理游戏　　 114 
4.3.1 建立影片　　 114 
4.3.2 定义类　　 117 
4.3.3 开始新的游戏　　 118 
4.3.4 检查玩家的猜测　　 121 
4.3.5 评估游戏结果　　 121 
4.3.6 结束游戏　　 123 
4.3.7 清除游戏元素　　 126 
4.3.8 修改游戏　　 127 
第5 章 游戏动画：射击游戏和弹跳游戏　　　 128 
5.1 游戏动画　　 128 
5.1.1 基于时间的动画　　 129 
5.1.2 基于时间动画的编程　　　130 
5.2 空袭游戏　　133 
5.2.1 影片设置和配置　　 133 
5.2.2 飞行中的飞机　　 134 
5.2.3 移动炮台　　 137 
5.2.4 射向天空的炮弹　　 140 
5.2.5 游戏类　　 142 
5.2.6 修改游戏　　 148 
5.3 弹球游戏　　149 
5.3.1 建立影片　　149 
5.3.2 类定义　　152 
5.3.3 开始游戏　　 153 
5.3.4 新建一个小球　　 155 
5.3.5 游戏动画及碰撞检测　　 155 
5.3.6 游戏结束　　161 
5.3.7 修改游戏　　162 
第6 章 拼图游戏：滑动与拼图　　163 
6.1 编辑位图图像　　164 
6.1.1 导入位图　　164 
6.1.2 位图切分　　165 
6.2 滑动拼接游戏　　167 
6.2.1 设置影片　　168 
6.2.2 设置类　　168 
6.2.3 导入图像　　170 
6.2.4 将图像切分成小块　　171 
6.2.5 重新排列小块　　173 
6.2.6 对玩家单击作出反应　　175 
6.2.7 滑动过程的动画　　177 
6.2.8 游戏结束和清理　　178 
6.2.9 修改游戏　　179 
6.3 拼图游戏　　179 
6.3.1 设置类　　180 
6.3.2 导入和切割图像　　181 
6.3.3 拖曳小块　　184 
6.3.4 游戏结束　　188 
6.3.5 修改游戏　　189 
第7 章 方向和运动：空袭2、太空岩石和气球游戏　　190 
7.1 用数学方法旋转和移动对象　　190 
7.1.1 正弦函数和余弦函数　　191 
7.1.2 使用余弦和正弦移动小车　　192 
7.1.3 根据位置计算角度　　195 
7.2 空袭2 　　198 
7.2.1 改变高射炮　　198 
7.2.2 改变炮弹　　200 
7.2.3 创建airraid2。as 　　202 
7.3 太空岩石　　203 
7.3.1 游戏元素设计　　203 
7.3.2 设置图形　　205 
7.3.3 设置类　　206 
7.3.4 开始游戏　　208 
7.3.5 得分和状态显示对象　　209 
7.3.6 飞船运动和玩家输入　　211 
7.3.7 打开保护盾　　215 
7.3.8 岩石　　216 
7.3.9 导弹　　219 
7.3.10 游戏控制　　221 
7.3.11 修改游戏　　223 
7.4 气球游戏　　223 
7.4.1 游戏元素设计　　224 
7.4.2 设置图形　　225 
7.4.3 设置类　　225 
7.4.4 开始游戏　　226 
7.4.5 准备一个游戏级别　　226 
7.4.6 主要的游戏事件　　227 
7.4.7 玩家控制　　229 
7.4.8 弹出气球　　230 
7.4.9 结束分布级别和游戏　　231 
7.4.10 时间轴脚本　　232 
7.4.11 修改游戏　　232 
第8 章 休闲游戏：同色消除和消除方块　　233 
8.1 可重用的类：爆炸点　　234 
8.1.1 开发爆炸点类　　235 
8.1.2 在影片中使用爆炸点　　238 
8.2 同色消除　　240 
8.2.1 玩同色消除游戏　　241 
8.2.2 游戏功能概述　　241 
8.2.3 影片和match three 类　　242 
8.2.4 设置游戏网格　　244 
8.2.5 玩家交互　　246 
8.2.6 制作小块的移动动画　　248 
8.2.7 寻找匹配　　250 
8.2.8 寻找可能的移动　　254 
8.2.9 分数记录和游戏结束　　257 
8.2.10 修改游戏　　258 
8.3 消除方块　　258 
8.3.1 设置图形　　260 
8.3.2 设置类　　260 
8.3.3 开始游戏　　261 
8.3.4 递归　　262 
8.3.5 使用递归移除小块　　264 
8.3.6 掉落的小块　　266 
8.3.7 检查空列　　267 
8.3.8 游戏结束　　269 
8.3.9 修改游戏　　270 
第9 章 文字游戏：hangman 和单词搜索　　271 
9.1 字符串和文本字段　　271 
9.1.1 actionscript 3.0 字符串处理　　272 
9.1.2 对文本字段应用文本格式　　275 
9.2 hangman　　281 
9.2.1 设置hangman 游戏　　281 
9.2.2 hangman 类　　282 
9.3 单词搜索　　284 
9.3.1 开发策略　　285 
9.3.2 定义类　　286 
9.3.3 创建单词搜索网格　　287 
9.3.4 用户交互　　291 
9.3.5 处理发现的单词　　293 
9.3.6 修改游戏　　296 
第10 章 问题和答案：问答游戏　　297 
10.1 存储和获取游戏数据　　297 
10.1.1 理解xml 数据　　298 
10.1.2 导入外部xml 文件　　300 
10.1.3 处理加载错误　　301 
10.2 问答游戏　　301 
10.2.1 设计一个简单的问答游戏　　302 
10.2.2 设置影片　　302 
10.2.3 设置类　　303 
10.2.4 导入问答数据　　306 
10.2.5 信息文本和游戏按钮　　306 
10.2.6 推进游戏进程　　308 
10.2.7 显示问题和答案　　308 
10.2.8 判断玩家的答案　　310 
10.2.9 结束游戏　　311 
10.3 问答游戏豪华版　　312 
10.3.1 添加时间限制　　312 
10.3.2 添加提示　　314 
10.3.3 添加事实描述　　317 
10.3.4 添加复杂的计分方式　　317 
10.3.5 随机选择问题　　 319 
10.4 图片问答游戏　　320 
10.4.1 更好的答案布局　　320 
10.4.2 识别两种类型的答案　　322 
10.4.3 创建loader 对象　　322 
10.4.4 判断正确答案　　 323 
10.4.5 扩展单击区域　　 324 
10.4.6 将图像作为问题　　 325 
10.4.7 修改游戏　　 326 
第11 章 动作类游戏：平台游戏　　 327 
11.1 设计游戏　　 328 
11.1.1 关卡设计　　328 
11.1.2 设计类　　333 
11.1.3 规划所需函数　　 334 
11.2 建立类　　335 
11.2.1 类的定义　　335 
11.2.2 开始游戏和关卡　　 336 
11.2.3 键盘输入　　340 
11.2.4 游戏主循环　　 341 
11.2.5 角色的运动　　 342 
11.2.6 滚动游戏关卡　　 347 
11.2.7 检测碰撞　　348 
11.2.8 敌人和玩家的死亡　　348 
11.2.9 收集分数和物体　　 350 
11.2.10 显示玩家状态　　 351 
11.2.11 关卡和游戏的结束　　 352 
11.2.12 游戏对话框　　　352 
11.3 修改游戏　　　353 
第12 章 驾驶和竞速游戏　　355 
12.1 创建俯视图驾驶游戏　　　355 
12.1.1 创建一个俯视下的世界　　 355 
12.1.2 游戏设计　　358 
12.1.3 类的定义　　360 
12.1.4 构造函数　　362 
12.1.5 寻找街区　　364 
12.1.6 垃圾的放置　　 364 
12.1.7 键盘输入　　366 
12.1.8 游戏循环　　367 
12.1.9 车的移动　　368 
12.1.10 检测与垃圾及垃圾桶的碰撞　　370 
12.1.11 时钟　　372 
12.1.12 分数提示器　　372 
12.1.13 游戏结束　　373 
12.1.14 修改游戏　　374 
12.2 建立flash 竞速游戏　　374 
12.2.1 竞速游戏的元素　　374 
12.2.2 制作赛道　　375 
12.2.3 音效　　376 
12.2.4 常量和变量　　376 
12.2.5 开始游戏　　377 
12.2.6 游戏主循环　　378 
12.2.7 车的移动　　380 
12.2.8 检查进度　　381 
12.2.9 倒计时和时钟　　382 
12.2.10 游戏结束　　383 
12.2.11 修改游戏　　384 
第13 章 纸牌游戏：猜大小、电子扑克和21 点　　385 
13.1 猜大小　　385 
13.1.1 创建牌堆　　386 
13.1.2 建立类　　387 
13.1.3 开始游戏　　387 
13.1.4 响应玩家的行为　　389 
13.1.5 清空　　390 
13.1.6 修改游戏　　391 
13.2 电子扑克　　391 
13.2.1 洗牌和发牌　　392 
13.2.2 计时事件　　392 
13.2.3 创建牌堆　　393 
13.2.4 游戏元素　　393 
13.2.5 建立类　　394 
13.2.6 洗牌　　396 
13.2.7 计时事件　　396 
13.2.8 开始发牌　　397 
13.2.9 抽牌　　　399 
13.2.10 完成一手牌　　401 
13.2.11 计算扑克赢分　　402 
13.2.12 修改游戏　　403 
13.3 21 点　　403 
13.3.1 游戏元素　　403 
13.3.2 设置类　　404 
13.3.3 开始游戏　　405 
13.3.4 计时事件　　406 
13.3.5 发牌　　407 
13.3.6 要牌或停牌　　408 
13.3.7 庄家行为　　409 
13.3.8 计算21 点的手牌　　410 
13.3.9 游戏的其他函数　　412 
13.3.10 修改游戏　　413 
第14 章 3d 游戏：打靶训练、竞速游戏和地牢冒险　　414 
14.1 flash 3d 基础　　415 
14.1.1 设置3d 位置　　415 
14.1.2 旋转物体　　416 
14.2 打靶训练　　418 
14.2.1 游戏元素　　418 
14.2.2 设置类　　419 
14.2.3 开始游戏　　420 
14.2.4 绘制加农炮和标靶　　420 
14.2.5 移动加农炮　　421 
14.2.6 打出炮弹　　422 
14.2.7 修改游戏　　423 
14.3 3d 竞速游戏　　423 
14.3.1 游戏元素　　424 
14.3.2 建立影片　　425 
14.3.3 用户控制　　427 
14.3.4 玩家的移动　　429 
14.3.5 z 索引排序　　430 
14.3.6 修改游戏　　431 
14.4 3d 地牢冒险　　431 
14.4.1 游戏元素　　432 
14.4.2 设置游戏　　432 
14.4.3 构造地牢　　433 
14.4.4 游戏主函数　　436 
14.4.5 玩家的移动　　437 
14.4.6 收集硬币　　438 
14.4.7 游戏的局限性　　439 
14.4.8 扩展游戏　　439 
第15 章 为iphone 制作游戏　　441 
15.1 开始ios 开发　　441 
15.1.1 需要准备什么　　442 
15.1.2 为ios 的发布　　443 
15.1.3 ios 游戏的建立过程　　447 
15.2 设计和编程的注意事项　　448 
15.2.1 屏幕尺寸　　448 
15.2.2 非网页　　449 
15.2.3 触摸　　449 
15.2.4 处理器速度　　449 
15.2.5 加速计　　450 
15.3 滑块拼图改编　　451 
15.3.1 调整屏幕尺寸　　451 
15.3.2 更改发布设置　　 452 
15.3.3 包含图片　　452 
15.3.4 发布　　 453 
15.4 弹子迷宫游戏　　 454 
15.4.1 建立类　　 454 
15.4.2 开始游戏　　 455 
15.4.3 游戏实操　　 456 
15.4.4 碰撞检测　　 458 
15.4.5 游戏结束　　 459 
15.4.6 修改游戏　　 459 
15.5 为ios 设备而优化　　 460 
15.5.1 利用gpu 和位图缓存　　 460 
15.5.2 对象池　　 462 
15.5.3 简化事件　　 462 
15.5.4 最小化屏幕重绘区　　 463 
15.5.5 更多优化方法　　 463 
15.6 iphone 之外　　 465