新实验六角色设计实验

新实验六角色设计实验

ID:44199718

大小:156.00 KB

页数:9页

时间:2019-10-19

新实验六角色设计实验_第1页
新实验六角色设计实验_第2页
新实验六角色设计实验_第3页
新实验六角色设计实验_第4页
新实验六角色设计实验_第5页
资源描述:

《新实验六角色设计实验》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、上机实验须知实验名称:Flash角色设计的实现实验目的:利用角色设计思想,设计战场生存记游戏屮的主要角色:小兵、大炮和炮弹。实验环境:1)高档微机2)Windows操作系统中文版3)FlashCS3Professional中文版实验原理:从广义上说,所谓角色,就是游戏屮的各种人物、怪物、武器、设备、环境等等,只要是具有一定外观的、集成了这个外观指代的对象的所有功能的独立模块,都可以称为是角色。在Flash里面,角色的设计其实非常的简单。MovieClip类已经为我们构建了一个角色所需的基本框架,只耍在这个框架下设计某个角色的所有外观、特征、动画、特技、属性、

2、函数以及事件,就可以完成角色设计。换句话说,Flash角色的本质是一个高度专门化的影片剪辑,它对外提供角色接口,对内则实现这些接口。一般来说,设计角色遵循自上而下,由主体到细节的思路。即一开始确认你要做的是什么样的角色,它有哪些功能,将这个功能描述出來,具体的功能将被表示为属性、方法和事件的列表。然后根据这个功能表将这些功能在内部一一实现。实验内容:假设需要设计一个这样的游戏:虽然你是一个英雄,但是你在一个空旷的战场上被包围了,四周布满了大炮。你唯-的目标就是生存下來。大炮总是会往你所在的位置开炮,所以你得不停地跑!按方向键进行上下左右跑动。这里将游戏分为若

3、干个角色。其中主要角色包插:1)小兵:它可以在屏幕的范围内到处跑动,躲避炮弹的袭击。如果被炮弹打中游戏就结束了。2)大炮:它总是能够自动对准小兵所在的方向,然后随机地打出炮弹3)炮弹:被发射出来以后就沿着一条直线运动直到运动到屏幕范围之外,当碰到小兵的吋候小兵将被打中而死去。这里大炮是否打中小兵,要使用冲突检测技术来实现。由于我们还没有讲解到这个技术,所以暂时先不考虑这个问题,我们把实验简化为小兵可以到处跑,大炮总是对准小兵,随机打出炮弹,但炮弹对小兵不起作用。也就是完成大炮、小兵、炮弹三个角色的主要功能即完成本实验。实验步骤:1)新建Flash文档(Act

4、ionScripB.O),设置文档的帧频率为50,大小为550*400o2)导入声音:导入三个声音文件,它们分别是跑动的声音、爆炸的声音的开炮的声音。分别链接为RunningSoundBombSound、ShootSound输岀。3)设计小兵确定这个角色的成员为:成员修饰符成员描述statusPublic角色当前所处的状态speedPublic角色跑动的速度radiusPrivate角色的半径directionPublic角色的方向。recprivate角色跑动的限定范围,矩形対象Boy(speed:Number=4,dir:int=0,rec:Rectan

5、gle=null)public构造函数stand()Public站立不动dead()Public死去run(dir:int)Public向某个方向跑动setStatus(s:String)Public设置小兵的状态runOnce(e:Event)private跑动一次的处理heroevent事件小兵的状态发生改变的时候,会触发heroevent事件。设计这个角色的动画,将这个角色的动画展开如下图所示:1234567将动画串在一个剪辑中。总共7帧,1〜7帧内容与上图编号顺序对应。对齐这些素材,使得播放时是一个完整的动画效果。在这个剪辑的时间轴上新建图层,改名为

6、label,设置第1帧的帧标签为stop,第2帧为run,第7帧为dead(先将它们设置为关键帧)。将label图层的第6帧设置为关键帧,在其上设置帧跳转语句:gotoAndPlay(4trunM);新建图层,改名为sound,在选中第二帧,在属性栏中设置其声音效果为“走路.wav”。在库中选中这个小兵剪辑,右键选择“链接”,设置其链接为“Boy”导出。在工作目录中创建Boy.as类文件,并输入以下代码:package}importflash.display.MovieClip;importflash.geom.Rectangle;importflash.e

7、vents.Event;publicclassBoyextendsMovieClip{publicvarstatus:String;publicvarspeed:Number;publicvardirection:int;privatevarradius:int;privatevarrec:Rectangle;publicfunctionBoy(speed:Number=4,dir:int=0,rec:Rectangle=null){stop();this.speed=speed;this.direction=dir;this.rec=rec==null?n

8、ewRectangle(0A550,400):rec

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。