当前位置:首页 > 传奇发布网 > 正文内容

FLASH动画制作第10章节1章节.ppt

admin1个月前 (08-13)传奇发布网15

本章小结 本章以打鼹鼠游戏之作为实例,介绍了利用Flash进行游戏制作的一般方法,制作游戏的一般步骤如下: 明确设计任务。 确定主题、布置场景。 制作必须的元件。 编写Action Script 语句。 在设计游戏前,总体上需要考虑几个问题:游戏环境的形成、规则的创建以及如何编写游戏的代码。游戏的环境和规则是最重要的部分,一个受欢迎的游戏不一定需要编写复杂的代码。 思考与练习 完成打鼹鼠游戏的“欢迎”场景动画制作,当玩家执行游戏时首先看到“欢迎”动动画播放完毕后,出现“Play”按钮,单击按钮后游戏开始。 完成打鼹鼠游戏的“结束”场景动画制作,游戏结束时播放“结束”场景动画,示“重玩”按钮,单击按钮后游戏重新开始。 为打鼹鼠游戏添加背景音乐和音效。 修改代码实现游戏进行时不但显示得分,而且显示打中率。 制作一个“挖地雷”游戏。 第10章 Action Script综合实例 10.1 明确设计任务 10.2 布置场景 10.3 编写代码 10.4 片头动画 相关知识 本章小结 思考与练习 概述Action Script是Flash提供的编程语句,当需要在影片中提供较强的交互效果时需要用到这一技术。 本章将通过完成一个经典的Flash游戏引领初学者跨入Action Script编程学习阶段。 学习目标 掌握if语句的语法格式和用途 熟悉随机函数使用方法 掌握鼠标指针的改变方法 熟练运用影片控制函数 引例 陈老师是某小学的计算机教师,每次在为学生讲授鼠标操作时总是会遇到学不会鼠标移动和单击的学生。经过很长一段时间的冥思苦想后,陈老师决定采用玩鼠标游戏的教学形式,以激发学生自主学习鼠标操作的学习热情,请为陈老师制作一个“打鼹鼠”的Flash小游戏。 10.1 明确设计任务 设计Flash小游戏需要进行一系列的操作,因此在开始制作之前明确设计任务和目标可以达到事半功倍的效果。 10.1.1 总结游戏特点 任务1 试玩打鼹鼠游戏 任务2 撰写游戏设计文档 游戏特点 “打鼹鼠”是一个非常经典的Flash游戏,具体特点如下: (1)鼹鼠间隔一定时间随机从洞口出现,每次出现一只。 (2)玩家必须在鼹鼠出洞时间内,单击鼠标,打中它。 (3)玩家每打中一只鼹鼠,记一定的分数。 (4)游戏中在固定位置实时显示总得分。 (5)为各玩家之间公平起见,游戏总时间固定。 边学边做 根据“游戏特点”的提示和自己的观察撰写简要的设计目标文档。 10.1.2 确定实现思路 10.2 布置场景 Flash游戏是场景、图层、元件和代码结合的有机整体,这一节主要完成静态场景的布置工作。 10.2.1 背景制作 任务4 制作草地背景 任务要求新建一个Flash文档,利用绘图工具制作有蓝天、白云和草地的背景。 任务分析完全运用绘图工具制作背景,不但花费的时间长,而且绘制出的图形不一定理想,一般情况下,采用先导入相关素材,再对素材进行修改的方法。 任务5 制作鼹鼠洞 任务要求 新建一个图层,利用绘图工具绘制逼真的“鼹鼠洞” 。 任务5 制作鼹鼠洞 任务分析 首先使用绘图工具绘制一个“鼹鼠洞”,然后选中绘制好的“洞”,按住键盘上的【Ctrl】键同时拖动选中的图形复制,将“鼹鼠洞”布置好;为体现层次感,可以利用“任意变形工具”将远方的“鼹鼠洞”缩小和旋转。 边学边做 新建一个“鼹鼠洞”图层,在图层上随机放置6个“鼹鼠洞”,调整好大小体现出层次感。 10.2.2 元件制作上一小节布置好了游戏的背景,接下来需要制作游戏中的主角——“鼹鼠”。 任务6 绘制卡通鼹鼠 任务要求 新建一个影片剪辑元件——“鼹鼠”,在元件内利用绘图工具绘制一只卡通鼹鼠。 10.2.2 元件制作 任务7 制作“鼹鼠出洞” 任务要求在“鼹鼠”影片剪辑元件中制作卡通鼹鼠自下而上的动画。 任务分析“打鼹鼠”游戏中,卡通鼹鼠间隔一定时间随机从洞口出现,每次出现一只,本任务的主要工作是制作“鼹鼠”从地下爬到地上和爬到地下的动画效果。首先将“任务6”制作的“卡通鼹鼠”图形转换成图形元件,将其拖拽至舞台中心下方;然后插入在舞台中心的“卡通鼹鼠”关键帧,利用运动补间生成动画即可。在帧操作的过程中,注意鼹鼠出现后要持续一段时间才可以爬到地下。 10.2.3 合成场景草地背景、鼹鼠洞和卡通鼹鼠制作完成后,需要将它们整合到一起,制作出鼹鼠从洞里钻出的场景动画。 任务8 放置鼹鼠 任务要求 在影片中新建一个“鼹鼠”图层,在每个鼹鼠洞下方放置“鼹鼠”影片剪辑实例,实例名称:ys1~ys6。 任务分析将元件从库中拖拽至舞台上称为创建元件实例,选中实例后可以在“属性”面板中指定实例的名称。 任务9 遮罩效果制作 任务要求 制作多只鼹鼠同时从洞中爬出的动画效果。 任务9 遮罩效果制作 任务分析完成“任务8”后,测试影片可以看到多只鼹鼠在场景中运动的动画效果,接下来的主要工作是制作多只鼹鼠从洞中爬出的效果。与制作探照灯文字、闪动文字和旋转地球等Flash动画的实现原理类似,需要采用遮罩效果来实现。在“鼹鼠”图层上方插入一个遮罩图层,将“鼹鼠”图层设置为被遮罩图层。根据“洞口”位置,在遮罩图层上绘制6个图形,这样在动画播放过程中,有图形的区域显示被遮罩层的动画,无图形的区域被遮掩起来,从而实现鼹鼠从“洞口”爬出的效果。 10.3 编写代码 布置好场景、制作出主要的元件后,开展游戏制作的另一格主要的工作——Action Script编程。 10.3.1 鼹鼠随机出现效果 任务10 制作随机出现的鼹鼠 任务要求编写Action Script代码,实现鼹鼠随机从洞中爬出。 任务分析实现鼹鼠随机从洞内爬出的思路如下: (1)因为所有的鼹鼠影片剪辑实例是同时加载到场景中的,所以只能通过控制实例播放动画的开始时间来实现鼹鼠随机“出洞”。 (2)鼹鼠影片剪辑实例的名称有一定的规律,前面的字母都是“ys”,后面的数字不同。在Flash中可以通过“_root”来指定或返回指向根影片时间轴的引用。例如引用ys1影片剪辑实例可以通过“_root

“ys1”

”来实现。 (3)应该设置鼹鼠影片剪辑加载到影片中后自动停止播放动画,在动画开始播放的帧处设置帧标签,以便可以通过“gotoAndPlay(“帧标签”)”函数控制影片剪辑的播放。 (4)通过随机播放鼹鼠影片剪辑动画可以实现鼹鼠随机出洞的动画效果。 (5)Flash提供了“random()”函数来产生随机数字,语法格式如表10-1所示。 10.3.2 改变鼠标指针 为使游戏逼真,需要将普通的鼠标指针更换为锤子。 任务11 绘制卡通锤子 任务要求 新建一个名称为“Pointer”的影片剪辑,在第1帧处绘制正常状态的锤子,第2帧处绘制“锤下去”的卡通锤子。 任务12 设置帧属性 任务要求 设置“Pointer”影片剪辑的帧属性,使其默认状态是停止播放,为“锤下去”帧设置“skdown”标签,时间轴如图所示。 任务13 实现鼠标跟随 任务要求 将场景鼠标指针替换成“Pointer”影片剪辑,并且实现鼠标跟随(锤子跟着鼠标走)。 任务分析 实现鼠标指针替换成指定影片剪辑的方法是:首先使用“Mouse.hide()”函数隐藏当前的“箭头”鼠标指针,然后利用“startDrag()”函数指定影片剪辑处于鼠标中心 。 10.3.3 “打中”动画制作现在已经实现了鼠标跟随和鼹鼠随机“出洞”效果,接下来需要完成鼹鼠被打中的动画。 任务14 “打中”鼹鼠动画制作 任务要求实现在鼹鼠出洞时间内,单击鼠标,打中它。 任务分析 (1)鼹鼠出现是通过播放播放“鼹鼠”影片剪辑来实现的,在剪辑中第5帧至第20帧鼹鼠处于“地上”。 (2)打中鼹鼠就是在鼹鼠处于地上时单击到它。 (3)鼹鼠被“打中”后,需要立刻回到洞里。这一段对应“鼹鼠”影片中第20帧至第5帧处的内容,同时“锤子”还要变成“锤下”的状态。确定实现思路是在“鼹鼠”影片剪辑中增加一个图层,在图层上放置一个透明按钮,并且设置按钮在第5帧至第20帧显示;单击按钮后,利用时间轴控制函数“gotoandplay()”控制影片剪辑播放鼹鼠“下洞”和锤子“锤下”动画。 10.3.4 限定游戏总时间为各玩家之间公平起见,游戏总时间固定,在相同时间内,打到鼹鼠越多的玩家越优秀。 任务15 限定游戏时间编写Action Script代码实现每执行一次游戏,鼹鼠共随机出现18次,不论玩家打中与否第18只鼹鼠消失后游戏自动停止。 任务分析场景动画每播放一次,只能随机出现一只鼹鼠。因为在Flash播放器在播放影片时默认自动重播,所以可以看到多只鼹鼠不断随机出现。如果限定鼹鼠总共随机出现18次,用“gotoandplay()”函数和帧标签控制影片重复播放18次即可。为鼹鼠出现的帧设置一个帧标签,当影片播放至最后一帧时采用“gotoandplay()”函数跳转回鼹鼠出现的帧可以实现重复播放。设置一个变量用于存储跳转的次数,当跳转次数大于18次时停止影片播放。 判断次数是否大于18可以使用if语句。 10.3.4 限定游戏总时间 变量是存放信息的容器,它可以存放信息并可以通过各种途径改变其中的信息。变量名要求以字母开头传奇私服,例如SCORE=100 表示将数字100存放在变量SCORE中;SCORE++表示将变量SCORE内存储的数字加1。一般情况下,变量在使用前需要进行初始化,初始化的做法是为变量赋初始值,例如SCORE=0 表示SCORE变量初始值为0。实现记录播放次数的具体方法是,设置一个变量,在影片播放第1帧时设置它的初始值是0,每次跳转之前要判断变量的值是否大于18;如果不大于18跳转,并且对变量进行加1操作,否则转到影片终止帧。 10.3.5 实现计分 玩家每打中一只鼹鼠,记一定的分数;同时在游戏中固定位置实时显示总得分,下面完成计分工作。 任务16 实现游戏计分 任务要求实现游戏计分功能,每打中一只鼹鼠记10分,舞台右下角显示总分数。 任务分析 (1)只要玩家单击到“鼹鼠”影片剪辑中的透明按钮就算打中,所以可以编写按钮的Action Script代码实现计分。 (2)与第9章类似,可以通过为动态文本对象指定变量的形式实现分数的更新。 (3)为避免复杂的变量定义,在鼹鼠动画开始播放时,初始化总分值和打中一只鼹鼠的分值。如果玩家单击到“鼹鼠”影片剪辑中的透明按钮则转到计分的帧处开始播放,否则将打中一只鼹鼠的分值置为零。在动画重复跳转之前计算总分 。 10.3.6 添加音效 任务17 添加音效 任务要求为游戏添加音效,实现打到鼹鼠时发出声音。 任务分析 (1)上一任务是通过玩家单击到“鼹鼠”影片剪辑中的透明按钮,来实现打中“鼹鼠”计分的,所以,如果打中鼹鼠后发出声音,同样需要通过设置按钮的Action Script代码来实现。 (2)因为只有打中鼹鼠时播放声音,所以,采用以前掌握的简单的将声音放置在图层上的技术不容易实现。 (3)Flash 8.0 提供了丰富的声音控制对象和方法,利用声音对象可以很容易的解决这一任务所遇到的问题。 (4)建立声音对象的一般操作步骤是:首先将声音文件导入至“库”,然后根据需要选择事件,展开“动作”面板,创建“Sound”对象的实例。 (5)创建“Sound”对象的实例的语句是:“实例名 = new Sound();”这里的实例名可以是以字母或符号开头的任意字符。 (6)可以使用“Sound”对象中封装的“attachSound()”函数指定Sound对象所对应的声音源,具体语法是:“Sound对象实例名. attachSound(声音文件链接名)”。 (7)利用“Sound”对象控制声音开始播放的方法是运用语句“Sound对象实例名.start()” 10.3.7 添加游戏结束动画为使游戏更加完美,接下来的主要任务是为游戏增加结束动画。 任务18 制作结束影片剪辑 任务要求 当游戏结束时,播放动画“Game Over”,并且提示用户是否重玩。请制作一个游戏结束影片剪辑 。 10.3.7 添加游戏结束动画 任务分析 将游戏结束动画定义成一个影片剪辑,影片剪辑中,绘制“Game Over”艺术字,在艺术字下方添加两个按钮即可完成任务,艺术字可以通过Flash制作,也可以在Word中制作,完成后粘贴至Flash中。 任务19 应用“游戏结束”影片剪辑 任务要求将制作好的“游戏结束”影片,集成至影片中。 任务分析 (1)因为整个游戏的实现思路是每播放一次鼹鼠动画,“Times”变量加1。 (2)不论用户是否打中全部的鼹鼠,只要鼹鼠出现18次游戏都应该停止,并提示用户是否重玩。 (3)重玩游戏,可以通过“gotoandplay()”函数转到帧标签来实现。 (4)退出游戏,可以采用“fscommand()”函数关闭Flash播放器实现。 10.4 片头动画游戏正式开始之前,玩家应首先看到片头场景动画,可以在这一场景中设置游戏背景音乐的音量大小,并且可以单击“开始游戏”按钮,开始正式的打鼹鼠游戏。 10.4.1 游戏介绍动画制作在玩家开始游戏之前,采用滚动字幕介绍游戏玩法,是一种最简单的片头动画。 任务20 制作游戏介绍动画 任务要求在影片中插入一个新场景,命名为“片头动画”,在场景中制作一个滚动字幕,滚动字幕的文字内容是对于游戏玩法的介绍,介绍完毕后,影片自动停止。 任务分析滚动字幕效果是通过遮罩这种动画技术来实现的,在遮罩层上绘制一个矩形,被遮罩层上制作一个自下而上的文本运动渐变即可实现。 任务21 添加开始按钮 任务要求游戏介绍滚动字幕播放完毕后,出现“开始游戏”按钮,玩家单击这一按钮正式开始游戏。 任务分析前一任务已经实现了游戏介绍动画播放完毕,影片自动停止播放,只需要制作一个按钮元件将其拖拽至第20帧处,编写简单的Action Script代码即可完成本任务。 单击按钮时,利用“Play()”函数,使影片自动播放下一场景,进入游戏。 10.4.2 设置背景音乐 任务22 制作音量调节器 任务要求 在“片头动画”场景中制作一个音量控制器,按住鼠标左键拖拽可实现按钮延音量线移动。 任务分析 (1)可以采用直线或铅笔工具绘制音量控制图形,绘制完毕后,采用“颜料桶”工具进行填充。 (2)控制按钮需要新建一个按钮元件,在元件中绘制渐变色填充的圆。 (3)当用户按下按钮时,通过鼠标跟随来实现按钮的移动。 (4)当按钮被松开时应该停止按钮的鼠标跟随。 (5)按钮位置的初始化和改变需要参照按钮的X、Y坐标。 任务23 添加背景音乐 任务要求编写相关的Action Script代码实现背景音乐播放,并且拖动音量控制按钮时,音量进行相应的改变。 任务分析 参照“任务17”中介绍的方法,运用“Sound”对象可以实现音乐文件的播放,同时,借助“Sound”对象封装的“setVolume()”函数可以实现音量大小控制。水平拖动音量控制按钮时,按钮的x轴坐标会发生改变传奇sf,将这个变化的值通过特定的运算,作为setVolume函数的参数,即可实现音量大小随控制按钮的位置变化。 相关知识 运用Flash进行游戏设计的相关知识如下: 绘图工具的综合运用。 帧的熟练使用,插入关键帧、转换关键帧、移动帧和设置帧标签等。 Action Script函数,例如,gotoAndPlay();、Random()和startDrag();等等。 Action Script属性和对象,如_root属性,Mouse对象。 Action Script语句,如if语句和变量赋值语句。 图层的运用,如遮罩等。

相关文章

《航海王壮志雄心》首测评测:这可能是最有趣的海贼漫改游戏(2)

《航海王壮志雄心》首测评测:这可能是最有趣的海贼漫改游戏(2)

《航海王壮志雄心》借鉴了《火影忍者》手游的成功经验 此前,魔方的《火影忍者》手游可以说是近年最成功的IP漫改手游。从本次测试版本内容来看,《航海王壮志雄心》延续了魔方工作室群在动作格斗游戏上的经验设计...

抽奖活动方案策划(11篇)

为了确保活动有序有力开展,常常要根据具体情况预先制定活动方案,活动方案是整场活动的战略,可以为活动指明方向。活动方案应该怎么制定呢? 活动方案2025抽奖活动策划 1 一、活动背景: 春节是中国最重要...

更好玩更刺激 QQ欢乐斗地主登录App store

腾讯自主研发的iPhone版QQ欢乐斗地主V1.0于2010年10月24日登录App store,游戏上线后众多iPhone玩家纷纷下载体验。仅仅2天时间,该游戏在App store上的评级就达到了...

细胞进化类游戏

在这个宇宙点击游戏中挖掘非凡的进化故事。 曾几何时,超过45亿年前,太阳系中没有生命。然后,几乎在眨眼间就地质时间尺度,一切都发生了变化。在地球上的原始汤深处,有机化合物会产生生命谦卑的起源。这场史诗...

幽会之战+战争元素+最高指挥官2+半神+冲突世界之苏联进攻游侠中文版+命令与征服4:泰伯利亚黄昏

物理的最基本的思路就是随便给个方法建模,给出对问题的描述,然后用实验证明之 物理的本身是不管逻辑的,他只关心建立一个可以描述自然的模型,至于模型是怎么建立的,和数学无关 当然,现在的物理在模型描述和...

起底游戏代练:收入低还很“卷” 已形成黑产链

起底游戏代练:收入低还很“卷” 已形成黑产链

近日,重庆21岁小伙“胖猫”被网恋女友以恋爱之名索要钱财,被分手后跳江一事引发关注。其姐姐表示,胖猫是一名职业代练,2年间挣了50多万,赚来的钱几乎全部都给了女友。在胖猫去世后,WE战队名宿WE_草莓...