第1章 Flash的基础知识 1
1.1 初识Flash CS5 1
1.1.1 动画的概念及原理 1
1.1.2 Flash CS5工作界面 2
1.2 图形制作 8
1.2.1 手工绘图工具 8
1.2.2 图形工具 9
1.2.3 颜色工具 9
1.2.4 文本工具 10
1.2.5 Deco工具 10
1.2.6 3D旋转工具和3D平移工具 10
1.3 元件和库 11
1.3.1 元件的类型 11
1.3.2 创建元件 12
1.3.3 库 14
1.4 基本动画制作 15
1.4.1 逐帧动画 15
1.4.2 传统补间动画 17
1.4.3 补间形状动画 20
1.4.4 补间动画 21
1.4.5 动画预设 23
1.5 高级动画制作 24
1.5.1 创建引导层动画 24
1.5.2 创建遮罩动画 24
1.5.3 创建骨骼动画 25
第2章 ActionScript 3.0脚本编程语言基础 27
2.1 ActionScript 3.0发展概述 27
2.2 Flash CS5的“动作”面板介绍 28
2.3 ActionScript的语法 32
2.4 ActionScript的数据类型和变量 34
2.4.1 ActionScript的数据类型 34
2.4.2 ActionScript的变量 37
2.5 ActionScript的运算符与表达式 39
2.6 ActionScript的函数 41
2.6.1 认识函数 41
2.6.2 定义函数 42
2.6.3 函数返回值 43
2.6.4 函数调用 43
2.6.5 函数的参数 43
2.6.6 函数作为参数 44
2.7 类和包 45
2.8 显示列表 46
2.8.1 显示对象的一些基本概念 47
2.8.2 DisplayObject类的子类 49
2.8.3 管理显示对象 50
2.9 事件 56
2.9.1 鼠标相关的操作事件 57
2.9.2 键盘相关的操作事件 59
2.9.3 帧事件 61
2.9.4 计时事件 63
2.9.5 删除事件侦听器 64
2.9.6 事件流 65
2.10 动作脚本基本命令 66
2.10.1 时间轴控制命令 66
2.10.2 显示输出命令 67
2.11 ActionScript代码的位置 67
2.11.1 在帧中编写ActionScript程序代码 68
2.11.2 在外部类文件中编写ActionScript程序代码 68
2.11.3 一个简单的Flash应用程序 69
第3章 ActionScript 3.0程序控制 72
3.1 选择结构 72
3.1.1 if条件语句 72
3.1.2 if-else语句 73
3.1.3 switch语句 73
3.2 循环结构 74
3.2.1 for语句 74
3.2.2 for-in和for each-in语句 75
3.2.3 while语句 76
3.2.4 循环的嵌套 76
3.2.5 break和continue语句 76
3.3 影片剪辑的控制 76
3.3.1 影片剪辑元件基本属性 77
3.3.2 控制影片剪辑元件的时间轴 79
3.3.3 复制与删除影片剪辑 80
3.3.4 拖曳影片剪辑 81
3.4 鼠标键盘和声音的控制 82
3.4.1 鼠标的控制 82
3.4.2 键盘的控制 82
3.4.3 声音的控制 84
3.5 Flash的文本交互 87
3.5.1 文本类型 87
3.5.2 文本实例名称 88
第4章 面向对象编程基础 94
4.1 对象和类 94
4.1.1 创建自定义的类 94
4.1.2 类的构造函数 96
4.1.3 类的属性的访问级别 98
4.1.4 get()和set()方法 98
4.2 继承 99
4.2.1 继承的定义 99
4.2.2 属性和方法的继承 100
4.2.3 重写 101
4.2.4 MovieClip和Sprite子类 101
4.3 多态 102
4.4 包外类 104
4.5 链接类 105
4.6 文档类 107
4.7 动态类 108
第5章 数组与字符串 110
5.1 数组 110
5.1.1 数组新增元素 111
5.1.2 删除数组中元素 112
5.1.3 数组排序 112
5.1.4 从数组中获取元素 114
5.1.5 数组转换为字符串 115
5.1.6 多维数组 115
5.2 字符串 118
5.2.1 字符串的定义 118
5.2.2 提取子字符串 118
5.2.3 字符串的拆分和合并 119
5.2.4 获取字符串指定位置的字符 120
5.2.5 在字符串中搜索 120
5.2.6 字符串的大小写转换 121
5.2.7 字符串的比较和排序 121
第6章 ActionScript的绘图功能 123
6.1 Graphics类 123
6.2 绘制图形 124
6.2.1 画线 124
6.2.2 画曲线 125
6.2.3 画矩形 125
6.2.4 画圆 127
6.2.5 画椭圆 128
6.3 位图处理 133
6.3.1 Bitmap类和BitmapData类 133
6.3.2 拷贝位图里的部分像素 135
6.3.3 使用BitmapData类滚动位图 137
第7章 拼图游戏 139
7.1 拼图游戏介绍 139
7.2 游戏设计的思路 139
7.2.1 制作3×3图块 139
7.2.2 随机排列图块 140
7.2.3 键盘输入信息的获取 141
7.2.4 移动图块的方法 142
7.2.5 判断拼图是否完成的方法 142
7.3 拼图游戏实现的步骤 143
7.3.1 创建Flash文件 143
7.3.2 设计文档类 143
第8章 连连看游戏 146
8.1 连连看游戏介绍 146
8.2 程序设计的思路 147
8.2.1 连连看游戏数据模型 147
8.2.2 动物方块布局 147
8.2.3 连通算法 148
8.2.4 智能查找功能的实现 155
8.3 关键技术 158
8.3.1 ActionScript 3.0删除容器所有子对象 158
8.3.2 Point对象 158
8.4 游戏设计的步骤 159
8.4.1 创建Flash文件 159
8.4.2 设计LinkType类 160
8.4.3 设计文档类 160
第9章 植物大战僵尸游戏 165
9.1 植物大战僵尸游戏介绍 165
9.2 程序设计的思路 165
9.2.1 植物大战僵尸游戏数据模型 165
9.2.2 植物和僵尸的管理 165
9.2.3 子弹射中僵尸的检测 167
9.3 游戏设计的步骤 167
9.3.1 绘制游戏区域 167
9.3.2 阳光和阳光类设计 169
9.3.3 添加植物到游戏区域 172
9.3.4 添加僵尸和僵尸类设计 179
9.3.5 添加子弹到游戏区域 181
第10章 雷电飞机射击游戏 189
10.1 雷电飞机射击游戏介绍 189
10.2 游戏设计的思路 189
10.2.1 游戏素材 189
10.2.2 地图滚动的原理实现 190
10.2.3 飞机和子弹的实现 191
10.2.4 主角飞机子弹与敌机的碰撞检测 191
10.3 游戏设计的步骤 192
10.3.1 创建Flash文件 192
10.3.2 动作脚本 193
第11章 扑克牌金字塔游戏 197
11.1 扑克牌金字塔游戏介绍 197
11.2 游戏设计的思路 198
11.2.1 游戏素材 198
11.2.2 游戏设计的思路 199
11.3 游戏设计的步骤 199
11.3.1 创建Flash文件 199
11.3.2 设计Card类 199
11.3.3 设计文档类 201
第12章 黑白棋游戏 206
12.1 黑白棋游戏介绍 206
12.2 黑白棋游戏设计的思路 207
12.2.1 棋子和棋盘 207
12.2.2 翻转对方的棋子 207
12.2.3 显示执棋方可落子位置 208
12.2.4 判断胜负功能 208
12.3 黑白棋游戏设计的步骤 208
12.3.1 创建Flash文件 208
12.3.2 设计文档类 208
第13章 汉诺塔游戏 216
13.1 汉诺塔游戏介绍 216
13.2 汉诺塔游戏设计的思路 216
13.3 关键技术 218
13.3.1 盘子影片剪辑对象的拖动 218
13.3.2 加载N个盘子对象 220
13.3.3 递归解决汉诺塔盘子移动 220
13.3.4 动画效果移动盘子 221
13.4 开发汉诺塔游戏的步骤 223
13.4.1 创建Flash文件 223
13.4.2 设计文档类 224
第14章 对对碰游戏 233
14.1 对对碰游戏介绍 233
14.2 程序设计的思路 234
14.2.1 游戏素材 234
14.2.2 设计思路 234
14.2.3 动态生成有效的8×8的方块 234
14.2.4 寻找三个匹配的方块 235
14.2.5 上方的方块下落 237
14.2.6 本列上方添加方块 237
14.2.7 查找可能的移动 237
14.3 程序设计的步骤 238
14.3.1 创建Flash文件 238
14.3.2 设计文档类 240
第15章 青蛙过河游戏 245
15.1 青蛙过河游戏介绍 245
15.2 程序设计的思路 245
15.2.1 游戏素材 245
15.2.2 设计思路 246
15.3 青蛙过河游戏设计的步骤 246
15.3.1 创建Flash文件 246
15.3.2 设计青蛙方块类 246
15.3.3 设计文档类 248
第16章 中国象棋 252
16.1 中国象棋介绍 252
16.2 中国象棋设计思路 253
16.2.1 棋盘表示 253
16.2.2 棋子表示 253
16.3.3 走棋规则 254
16.3.4 坐标转换 256
16.3 中国象棋实现的步骤 256
16.3.1 设计棋子类 256
16.3.2 创建Flash文件 258
16.3.3 设计文档类 258
第17章 超级玛丽游戏 269
17.1 超级玛丽介绍 269
17.2 程序设计的思路 269
17.2.1 游戏素材 269
17.2.2 背景地图实现 270
17.2.3 播放声音 270
17.2.4 解决主角图像翻转 271
17.2.5 解决多个按键检测 271
17.2.6 整体实现流程 272
17.3 超级玛丽游戏设计的步骤 272
17.3.1 创建Flash文件 272
17.3.2 设计敌人怪物类 274
17.3.3 设计图块类 276
17.3.4 设计地图背景类 277
17.3.5 设计主角类 279
17.3.6 设计场景类 283
17.3.7 设计文档类 285
第18章 智力测试游戏 287
18.1 智力测试游戏介绍 287
18.2 程序设计的思路 288
18.3 关键技术 288
18.3.1 组件概述 288
18.3.2 用户界面组件 289
18.3.3 Flash处理XML文档数据 294
18.4 智力测试游戏设计的步骤 297
18.4.1 创建Flash文件 297
18.4.2 设计文档类 298
第19章 推箱子游戏 303
19.1 推箱子游戏介绍 303
19.2 游戏设计的思路 303
19.3 游戏设计的步骤 305
19.3.1 创建Flash文件 305
19.3.2 设计地图单元类 306
19.3.3 设计地图管理类 306
19.3.4 设计文档类 310
第20章 2.5 D游戏 312
20.1 2.5 D游戏介绍 312
20.2 2.5 D游戏设计思路 313
20.3 程序设计的步骤 315
20.3.1 创建Flash文件 315
20.3.2 设计人物类 316
20.3.3 设计文档类 317
参考文献 327