1、石家庄科技信息职业学院毕 业 论 文题目: 基于 Flash 的俄罗斯方块 学 号: 090124002 姓 名: 蒋雨乘 专业班级:软件技术(游戏方向)09-24 班指导教师: 刘永伟 完成日期: 2011-12-18 2基 于 FLASH 的 俄 罗 斯 方 块摘 要 : Flash 是美国的一家公司(MACROMEDIA 公司)于 1996 年 6月推出的优秀网页动画设计软件, 在中国经历了 9 年的发展时间。曾经在中国风云一时,出现了 FALSH 热。由于动漫也成为一种时尚的艺术,而且最直接简单的动画创作是就 FLASH。我认为它可以自成体系,有它自己独特的表现方法.手段和流通方式及“
2、闪客”生活。甚至我认为它是现代文明的一种符号,新新艺术创作方式,是一种流行于网络的网络文化。FLASH 作为新的事物它的应用非常广泛,主要用于网络,FLASH 网站片头,FLASH 演示动画,FLASH 网站,FLASH 商业广告,电视,掌上电脑,游戏,MTV,手机屏保,手机彩信,家用电器等等!这些表示 FLASH 的确是一个非常好的传播载体。它能够引申出非常多的商业机会。能够以多样的效果和形式来充分体现产品或企业形象。现在电脑,网络,手机用户等等都是在不断的增加,网络的发展壮大和完美,电脑更加普及,上网的人更多。正因为它有怎么多的用户,爱好者,创作者和发展平台,使用价值和欣赏价值。我认为 F
3、LASH 真正的价值是其未来!它是一种新新事物,是一种新的艺术创作和文化。本文将介绍如何利用 FLASH 设计和开发俄罗斯方块游戏。关键词:FLASH;发展;游戏;应用;3目 录第 一 章 引 言 41.1 Flash 概 述 41.2 FLASH 发 展 41.3 Flash 的 特 点 6第 二 章 FLASH 版 俄 罗 斯 方 块 游 戏 开 发 前 期 工 作 72.1 FLASH 程 序 界 面 介 绍 72.2 FLASH 程 序 常 用 快 捷 键 介 绍 102.3 初 识 Action Script 122.4 Photoshop 基 本 概 念 知 识 132.5 FLA
4、SH 版 俄 罗 斯 方 块 设 计 思 路 15第 三 章 FLASH 版 俄 罗 斯 方 块 游 戏 开 发 163.1 俄 罗 斯 方 块 游 戏 背 景 设 计 163.2 俄 罗 斯 方 块 游 戏 方 块 形 状 设 计 183.3 俄 罗 斯 方 块 游 戏 操 作 设 计 23第 四 章 FLASH 版 俄 罗 斯 方 块 游 戏 开 发 心 得 31参 考 文 献 314第 一 章 引 言1.1 Flash 概 述Flash 由 macromedia 公司推出的交互式矢量图和 Web 动画的标准。网页设计者使用 Flash 创作出既漂亮又可改变尺寸的导航界面以及其他奇特的效果
5、。flash 涉及到的领域:动画游戏制作,网络构件,学习课件,网站广告设计及全 flash 网站,工控界面等等。主要特点是制作简单,通用性比较大,涉及的领域多,制作出的东西效果都可以做到非常精致。缺点在于有些效果需要别的软件辅助制作等等,不是所有效果都能制作出来。 (比如些 3d 效果,flash就很难制作,只能通过导入的方式或者帧并帧的方式) FLASH 有三重意义:1) FLASH 英文本意为“闪光”;2)它是全球流行的电脑动画设计软件;3)它代表用上述软件制作的流行于网络的动画作品。Flash 是一种交互式矢量多媒体技术,他的前身是 Futureplash,早期网上流行的矢量动画插件。后
6、来由于 Macromedia 公司收购了 Future Splash 以后便将其改名为Flash2,到现在最新的 flashcs3。现在网上已经有成千上万个 Flash 站点,著名的如 Macromedia 专门 ShockRave 站点,全部采用了 Shockwave Flash 和Director。可以说 Flash 已经渐渐成为交互式知量的标准,未来网页的一大主流。 本文将借助 FLASH 里的 ActionScript 来设计并完成游戏俄罗斯方块的开发。1.2 FLASH 发 展Flash 最 早 期 的 版 本 称 为 Future Splash Animator, 当 时 Futu
7、re Splash Animator 最 大 的 两 个 用 户 是 微 软 ( Microsoft) 和 迪 斯 尼( Disney) 。 1996 年 11 月 , Future Splash Animator 卖 给 了MM( M) , 同 时 改 名 为 Flash1.0 。 这 里 不 得 不 提 到 的 人 物 是乔 纳 森 ?盖 伊 (Jonathan Gay), 是 他 和 他 的 六 人 小 组 首 先 创 造 了 Future Splash Animator, 也 就 是 现 在 Flash 的 真 正 前 身 了 。Macromedia 公 司 在 1997 年 6 月
8、推 出 了 Flash 2.0 , 1998 年 5 月 推 出 了5Flash3.0。 但 是 这 些 早 期 版 本 的 Flash 所 使 用 的 都 是 Shockwave 播 放 器 。自 Flash 进 入 4.0 版 以 后 , 原 来 所 使 用 的 Shockwave 播 放 器 便 仅 供 Director 使 用 。 Flash 4.0 开 始 有 了 自 己 专 用 的 播 放 器 , 称 为 “Flash Player”, 但 是 为 了 保 持 向 下 相 容 性 , Flash 仍 然 沿 用 了 原 有 的 扩 展 名 :.SWF( Shockwave Flas
9、h) 。2000 年 8 月 Macromedia 推 出 了 Flash5.0 , 它 所 支 持 的 播 放 器 为 Flash Player 5。 Flash 5.0 中 的 ActionScript 已 有 了 长 足 的 进 步 , 并 且 开 始 了对 XML 和 Smart Clip( 智 能 影 片 剪 辑 ) 的 支 持 。 ActionScript 的 语 法 已经 开 始 定 位 为 发 展 成 为 一 种 完 整 的 面 向 对 象 的 语 言 , 并 且 遵 循ECMAScript 的 标 准 , 就 像 javascript 那 样 。1.3FLASH 的 发 展
10、方 向Flash 被 称 为 是 “最 为 灵 活 的 前 台 ”, 由 于 其 独 特 的 时 间 片 段 分 割( TimeLine) 和 重 组 ( MC 嵌 套 ) 技 术 , 结 合 ActionScitp 的 对 象 和 流 程控 制 , 使 得 在 灵 活 的 界 面 设 计 和 动 画 设 计 成 为 可 能 , 同 时 它 也 是 最 为 小 巧 的前 台 。 Flash 具 有 跨 平 台 的 特 性 ( 这 点 和 Java 一 样 ) , 所 以 无 论 你 处 于 何种 平 台 , 只 要 你 安 装 了 支 持 的 Flash Player, 就 可 以 保 证 它
11、 们 的 最 终 显 示效 果 的 一 致 , 而 不 必 像 在 以 前 的 网 页 设 计 中 那 样 为 IE 或 NetSpace 各 设 计一 个 版 本 。 同 Java 一 样 , 它 有 很 强 的 可 移 植 性 。 最 新 的 Flash 还 具 有 的手 机 支 持 功 能 , 可 以 让 用 户 为 自 己 的 手 机 设 计 喜 爱 的 功 能 。 当 然 首 先 必 需 要有 支 持 Flash 的 手 机 , 同 时 它 还 可 以 应 用 于 Pocket PC。 那 么 , Flash 可能 的 发 展 方 向 究 竟 如 何 ?1、 应 用 程 序 开 发
12、: 由 于 其 独 特 的 跨 平 台 特 性 、 灵 活 的 界 面 控 制 以 及 多媒 体 特 性 的 使 用 , 使 得 用 Flash 制 作 的 应 用 程 序 具 有 很 强 的 生 命 力 。 在 与用 户 的 交 流 方 面 具 有 其 它 任 何 方 式 都 无 可 比 拟 的 优 势 。 当 然 , 某 些 功 能 可 能还 要 依 赖 于 XML 或 者 其 它 诸 如 javascript 的 客 户 端 技 术 来 实 现 。 但 目 前的 现 状 是 : 很 少 有 人 具 有 运 用 Flash 进 行 应 用 程 序 开 发 这 方 面 的 经 验 。 但这
13、个 难 度 会 随 着 时 间 的 推 移 而 逐 步 减 弱 。 事 实 上 , 对 于 大 型 项 目 而 言 , 使 用Flash 此 时 未 免 有 些 言 之 过 早 , 因 为 它 意 味 着 很 大 的 风 险 。 当 然 , 在 最 早 的时 间 掌 握 和 积 累 这 方 面 的 经 验 无 疑 是 一 种 很 大 的 竞 争 力 。 可 以 将 这 种 技 术 运用 在 项 目 中 的 一 小 部 分 或 者 小 型 项 目 中 , 以 减 少 开 发 的 风 险 。62、 软 件 系 统 界 面 开 发 : Flash 对 于 界 面 元 素 的 可 控 性 和 它 所
14、表 达 的 效果 无 疑 具 有 很 大 的 诱 惑 。 对 于 一 个 软 件 系 统 的 界 面 , Flash 所 具 有 的 特 性完 全 可 以 为 用 户 提 供 一 个 良 好 的 接 口 。3、 手 机 领 域 的 开 发 : 手 机 领 域 的 开 发 将 会 对 精 确 ( 像 素 级 ) 的 界 面 设计 和 CPU 使 用 分 布 的 操 控 能 力 有 更 高 的 要 求 , 但 同 时 也 意 味 着 更 加 更 广 泛 的使 用 空 间 。 事 实 上 手 机 和 Pocket PC 的 分 界 已 越 来 越 不 明 显 , 开 发 者 必 须为 每 一 款 手
15、 机 ( 或 Pocket PC) 设 计 一 个 不 同 的 界 面 , 因 为 它 们 的 屏 幕 大小 各 有 不 同 。 当 然 软 件 的 内 核 可 能 是 相 同 的 , 所 要 注 意 的 是 各 类 手 机 CPU的 计 算 能 力 和 内 存 的 大 小 。 这 无 疑 是 些 很 苛 刻 的 要 求 。4、 游 戏 开 发 : 事 实 上 , Flash 中 的 游 戏 开 发 已 经 进 行 了 多 年 的 尝 试 。但 至 今 为 止 仍 然 停 留 在 中 、 小 型 游 戏 的 开 发 上 。 游 戏 开 发 的 很 大 一 部 份 都 受限 于 它 的 CPU
16、能 力 和 大 量 代 码 的 管 理 。 不 过 可 喜 的 是 , Flash Player 7运 行 时 性 能 提 高 了 2 至 5 倍 ; 而 且 最 新 的 Flash MX 2004 Professional提 供 了 项 目 管 理 和 代 码 维 护 方 面 的 功 能 , Actionscript 2.0 的 发 布 也 使得 程 序 更 加 容 易 维 护 和 开 发 。5、 Web 应 用 服 务 : 其 实 很 难 界 定 Web 应 用 服 务 的 范 围 究 竟 有 多 大 , 它似 乎 它 拥 有 无 限 的 可 能 。 随 着 网 络 的 逐 渐 渗 透 ,
17、 基 于 客 户 端 -服 务 器 的 应用 设 计 也 开 始 逐 渐 受 到 欢 迎 , 并 且 一 度 被 誉 为 最 具 前 景 的 方 式 。 但 是 , 这 种方 式 开 发 者 可 能 要 花 更 多 的 时 间 在 服 务 器 后 台 处 理 能 力 和 架 构 上 , 并 且 将 它们 与 前 台 ( Flash 端 ) 保 持 同 步 。6、 站 点 建 设 : 事 实 上 , 现 在 只 有 极 少 数 人 掌 握 了 使 用 Flash 建 立 全Flash 站 点 的 技 术 。 因 为 它 意 味 着 更 高 的 界 面 维 护 能 力 和 开 发 者 整 站 架
18、构 能力 。 但 它 带 来 的 好 处 也 异 常 明 显 : 全 面 的 控 制 ; 无 缝 的 导 向 跳 转 ; 更 丰 富 的媒 体 内 容 ; 更 体 贴 用 户 的 流 畅 交 互 ; 跨 平 台 和 瘦 客 户 端 的 支 持 ; 以 及 与 其 它Flash 应 用 方 案 无 缝 连 接 集 成 等 。7、 多 媒 体 娱 乐 : 其 实 , 在 这 个 方 面 无 需 再 说 什 么 。 尽 管 它 的 发 展 速 度没 有 像 当 初 预 言 的 那 样 迅 速 , 但 它 仍 然 还 在 不 断 前 进 。 Flash 本 身 就 以 多媒 体 和 可 交 互 性 而
19、 广 为 推 崇 。 它 所 带 来 亲 切 氛 围 相 信 每 一 位 用 户 都 会 喜 欢 。flash 影 片 的 后 缀 名 为 .swf , 该 类 型 文 件 必 须 有 flash 播 放 器 才 能 打 开 ,7但 占 用 硬 盘 空 间 少 , 所 以 现 在 被 广 泛 应 用 于 游 戏 。1.3FLASH 的 特 点1.Flash 动 画 受 网 络 资 源 的 制 约 一 般 比 较 短 小 , 利 用 Flash 制 作 的 动画 是 矢 量 的 , 无 论 把 它 放 大 多 少 倍 都 不 会 失 真 。2.Flash 动 画 具 有 交 互 性 优 势 ,
20、可 以 更 好 地 满 足 所 有 用 户 的 需 要 。 它 可以 让 欣 赏 者 的 动 作 成 为 动 画 的 一 部 分 。 用 户 可 以 通 过 点 击 、 选 择 等 动 作 , 决定 动 画 的 运 行 过 程 和 结 果 , 这 一 点 是 传 统 动 画 所 无 法 比 拟 的 。3. Flash 动 画 可 以 放 在 网 上 供 人 欣 赏 和 下 载 , 由 于 使 用 的 是 矢 量 图 技 术 ,具 有 文 件 小 、 传 输 速 度 快 、 播 放 采 用 流 式 技 术 的 特 点 , 因 此 动 画 是 边 下 载 边播 放 , 如 果 速 度 控 制 得
21、好 , 则 根 本 感 觉 不 到 文 件 的 下 载 过 程 。 所 以 Flash动 画 在 网 上 被 广 泛 传 播 。4. Flash 动 画 有 崭 新 的 视 觉 效 果 , 比 传 统 的 动 画 更 加 轻 易 与 灵 巧 , 更 加“酷 ”。 不 可 否 认 , 它 已 经 成 为 一 种 新 时 代 的 艺 术 表 现 形 式 。5.Flash 动 画 制 作 的 成 本 非 常 低 , 使 用 Flash 制 作 的 动 画 能 够 大 大 地 减少 人 力 、 物 力 资 源 的 消 耗 。 同 时 , 在 制 作 时 间 上 也 会 大 大 减 少 。6.Flash
22、 动 画 在 制 作 完 成 后 , 可 以 把 生 成 的 文 件 设 置 成 带 保 护 的 格 式 ,这 样 维 护 了 设 计 者 的 版 权 利 益 。第 二 章 FLASH 版 俄 罗 斯 方 块 游 戏 开 发 前 期 工 作2.1 FLASH 程 序 界 面 介 绍在使用 Flash 8.0 制作俄罗斯方块游戏之前我们首先来认识一下它的界面。我们在制作时需要新建一个 FLASH 文档,就要打开新建文档界面,如图 1 所示。在我们新建好空的 flash 文档后我们就能看见 flash 的基本工作台,如图 2 所示,今后我们的设计和开发将在工作台上进行。Flash 8 的工作窗口由
23、标题栏、菜单栏、主要工具栏、文档选项卡、编辑栏、时间轴、舞台工作区、工具箱以及各种面板组成。而主菜单命令有:文件、编辑、视图、插入、修改、文本、命令、控制、窗口和帮助等。在工作台中间的上方为时间轴,时间轴是用于组织和控制文档内容在一定时间内播放的图层数和帧数。时间轴的主要组件是图8层、帧和播放头。文档中的图层列在时间轴左侧的列中。每个图层中包含的帧显示在该图层名右侧的一行中。时间轴顶部的时间轴标题指示帧编号。播放头指示当前在舞台中显示的帧。播放 Flash 文档时,播放头从左向右通过时间轴。当时间轴状态显示在时间轴的底部,它指示所选的帧编号、当前帧频以及到当前帧为止的运行时间 ,时间轴左侧是图
24、层,图层就像堆叠在一起的多张幻灯胶片一样,在舞台上一层层地向上叠加。如果上面一个图层上没有内容,那么就可以透过它看到下面的图层。 Flash 中有普通层、引导层、遮罩层和被遮罩层4 种图层类型,为了便于图层的管理,用户还可以使用图层文件夹。如图 3 所示。时间轴下方是舞台,舞台就是我们所说的工作区,Flash 8 扩展了舞台的工作区,可以在上面存储更多的项目。舞台是放置动画内容的矩形区域,这些内容可以是矢量图、文本框、按钮、导入的位图图形或视频剪辑等,只有放置舞台工作区的对象才能作为影片输出或打印。如图 4 所示。图 1 建 立 文 档 界 面9图 2 FLASH 的基本工作环境 图 3 时间
25、轴界面102.2 FLASH 程 序 快 捷 键 介 绍在 我 们 开 发 游 戏 之 前 先 介 绍 一 下 FLASH 程 序 有 哪 些 快 捷 以 便 于 我 们 能够 更 好 更 快 的 开 发 我 们 的 游 戏 。 常 见 快 捷 键 如 下 :1.工 具 箭 头 工 具 【 V】 部 分 选 取 工 具 【 A】 线 条 工 具 【 N】 套 索 工 具 【 L】 钢 笔 工 具 【 P】 文 本 工 具 【 T】 椭 圆 工 具 【 O】 矩 形 工 具 【 R】 铅 笔 工 具 【 Y】 画 笔 工 具 【 B】 任 意 变 形 工 具 【 Q】 填 充 变 形 工 具 【
26、 F】 墨 水 瓶 工 具 【 S】 颜 料 桶 工 具 【 K】 滴 管 工 具 【 I】 橡 皮 擦 工 具 【 E】 手 形 工 具 【 H】 缩 放 工 具 【 Z】 ,【 M】 2.菜 单 命 令 新 建 FLASH 文 件 【 Ctrl】 +【 N】 打 开 FLA 文 件 【 Ctrl】 +【 O】 作 为 库 打 开 【 Ctrl】 +【 Shift】 +【 O】 关 闭 【 Ctrl】 +【 W】 保 存 【 Ctrl】 +【 S】 另 存 为 【 Ctrl】 +【 Shift】 +【 S】 导 入 【 Ctrl】 +【 R】 导 出 影 片 【 Ctrl】 +【 Shift】 +【 Alt】 +【 S】 发 布 设 置 【 Ctrl】 +【 Shift】 +【 F12】 发 布 预 览 【 Ctrl】 +【 F12】 发 布 【 Shift】 +【 F12】 打 印 【 Ctrl】 +【 P】 退 出 FLASH 【 Ctrl】 +【 Q】 撤 消 命 令 【 Ctrl】 +【 Z】 剪 切 到 剪 贴 板 【 Ctrl】 +【 X】 拷 贝 到 剪 贴 板 【 Ctrl】 +【 C】 粘 贴 剪 贴 板 内 容 【 Ctrl】 +【 V】 粘 贴 到 当 前 位 置 【 Ctrl】 +【 Shift】 +【 V】