Flash游戏编程之关卡设计分析

上传人:爱****1 文档编号:252902357 上传时间:2024-11-22 格式:PPT 页数:25 大小:355.50KB
返回 下载 相关 举报
Flash游戏编程之关卡设计分析_第1页
第1页 / 共25页
Flash游戏编程之关卡设计分析_第2页
第2页 / 共25页
Flash游戏编程之关卡设计分析_第3页
第3页 / 共25页
点击查看更多>>
资源描述
,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,Flash玩耍编程,肖 刚,闽江学院电子系计算机教研室,第八章 关卡设计,教学提要,玩耍关卡模式分类,关卡例如程序,把握玩耍中关卡设计的思路和技巧,1,引言,人类似乎对战胜困难布满热忱,当一个个难关被攻破时,玩家从中获得了成长或者荣誉,一种过五关斩六将的高傲感油然而生。,任何玩耍都有由易到难的内在跨度,将不同难度串连起来,既丰富了玩耍的内涵,又扩大了玩耍的目标玩家。所以设计关卡成了大多数玩耍的选择。,那么究竟什么是关卡?有何技术难点?如何具体实现呢?,2.1,关卡的分类,关卡其实就是玩耍中一个个串连的任务。,从开发者的角度考虑,关卡可以分为以下两类:,简洁参数化关卡,变换场景的关卡,2.2 简洁参数化关卡,这种玩耍的难度级别可以用简洁的参数变化来表示。比方,汉诺塔玩耍,汉诺塔层数的递增就构成了一级级的关卡。,扫雷玩耍,不同的宽度、高度、雷数的组合形成不同的难度级别。,还有?,设计这类玩耍的关卡特殊简洁,只要在初始化玩耍中场景前,修改这些参数即可。依据新的参数构建的玩耍场景自然就形成新的关卡了。,更加直接的说,这类玩耍的关卡,只要在初始化玩耍时使用一个自定义的selectMode函数即可解决。,2.2 简洁参数化关卡,下面的代码是某扫雷玩耍的selectMode函数,它通过下拉框选择预设难度级别。从下拉框中选择一个难度,程序就将难度参数保存在三个文本框。以便用户自定义修改以及初始化玩耍之用。,comboMode.addEventListener(Event.CHANGE,selectMode);,function selectMode(evt:Event),switch(evt.target.value),case“1“:,txtLineCount.text=String(8);,txtRowCount.text=String(8);,txtMineCount.text=String(10);,break;,case“2“:,txtLineCount.text=String(14);,txtRowCount.text=String(14);,txtMineCount.text=String(35);,break;,2.3,变换场景的关卡,这类玩耍的关卡之间不是通过修改几个参数就可以解决的,它可能完全换了一个场景。其中的变化可能有:地图不同、敌人不同、任务不同等等。这种关卡在角色扮演玩耍中比较多见。,这种类型的关卡初看起来似乎比前者难多了。但事实上,假设开发者充分运用了面对对象的程序设计思想,将玩耍中的各种组成局部模块化,那么,搭建一个新的关卡,就象搭积木一样简洁。结合Flash优秀的可视化设计,添加一个关卡甚至连一行代码都不用添加。,2.3,变换场景的关卡,关键是理清晰关卡之间的异同,并将差异规整成标准的模式。,例如经典的搬运工玩耍。其关卡之间的唯一差异是地图不同。于是将地图的格式标准化,那么只要导入新地图的数据即可就进入下一关,这和参数化关卡已经特殊接近了。,再比方设计类似仙剑奇侠传的玩耍。经分析,关卡之间的差异无非是地图不同、对话内容不同、任务不同、敌人不同、角色等级或装备等的不同。那么只要将地图表示、对话方式、任务模式、战斗方式、角色属性等等都标准化成一个固定的模式,由玩耍根底框架或玩耍引擎供给支持,那么设计一个新的关卡,就简化成绘制一张新地图、编写一份新对话文本、设定新成功条件、放置新角色位置、设置新角色属性与行为等工作。,假设设计得当,其中多数工作并不需要编写代码,除非要基于这些数据设计特殊的玩耍规律。,2.3,变换场景的关卡,总而言之,关卡类玩耍可以归结为玩耍平台设计、参数设计以及必需和两者关联的程序规律设计三个局部。如以以下图所示:,这里的参数是广义的概念,各种角色、资源、对象都是一种参数中的一种。,3 玩耍实例:战场生存过关版,玩耍描述:,将前面设计的玩耍“战场生存记”改为带关卡的玩耍。每个关卡的大炮数量不同,有的关卡还有地雷或者障碍物。只要玩家能够坚持住确定的时间即进入下一关。,3.1,主流程图,先设计这个玩耍的主流程图,如以以下图所示:,其中关卡数可以连续添加。具体设计时将此流程图的每个过程对应为Flash中的一帧或者连续的几帧,留意帧之间的跳转应尽量使用帧标签以适应开发时帧数的变化。,3.2 关卡的构造,关卡是一段连续的帧,其程序构造如以以下图所示:,3.2 关卡的构造,关卡初始化阶段:完本钱关卡玩耍场景的预备,布置大炮、地雷,以及初始化玩耍场景。,玩耍阶段:当玩耍任务完成或者失败,在退出关卡之前,那些以后不再使用到的资源、代码,都要去除洁净,以免影响程序的其它局部。,3.3 具体步骤,设计地雷角色,地雷角色与炮弹角色特殊相像,但更简洁,由于它不需要移动。这里仅给出其第1帧代码,角色的其余局部读者自行完成。,stop;,var enemy:MovieClip=MovieClip(parent.getChildByName(“hero“);,addEventListener(Event.ENTER_FRAME,repeat);,function repeat(e:Event),if(enemy=null),return;,if(hitTestObject(enemy)/遇到敌人了,gotoAndPlay(“bomb“);/自身爆炸,enemy.dead;/指示敌人死去,组织玩耍程序,这个玩耍完成时的时间轴如以以下图所示:,第1帧是玩耍开头界面以及各个具体的函数。接下来是四个关卡,最终两帧分别是成功/失败界面和全部过关界面。,3.3 具体步骤,3.3 具体步骤,内容描述,角色图层放置着英雄角色实例hero、大炮和地雷等等。这些实例都是从库中直接拖出来,在可视化环境下布置好即可。,与战场生存记相比,程序多了几个变量,它们分别是level当前关卡、totalLevel关卡总数、totalTime关卡时限、victory成功/失败。这些变量在初始化程序和推断玩耍流程时使用到。计时方式改为倒计时,推断玩耍成败的方式亦有所不同。如何不同?,第1帧的代码,与前一个玩耍不同的局部如下所示:,var level:int=1;,var totalLevel=4;,var totalTime:int;,var victory:Boolean;,function startGame(e:MouseEvent),gotoAndPlay(“level“+level);,3.3 具体步骤,function init,victory=false;,time=totalTime;,timeCountShow.text=String(time);,levelShow.text=String(level);,startTime=new Date;,hero.gotoAndStop(“stop“);,stage.addEventListener(KeyboardEvent.KEY_DOWN,heroRun);/跑动,stage.addEventListener(KeyboardEvent.KEY_UP,heroStop);/取消跑动,stage.addEventListener(Event.ENTER_FRAME,checkGame);/检查玩耍是否完毕,function checkGame(e:Event),showTime;,if(hero.status=“dead“),play;/玩耍失败,播放到关卡完毕帧,if(time=totalLevel&victory=true),gotoAndStop(“win“);/成功画面,else,if(victory),level+;,txtResult.text=“闯关成功“;,else,txtResult.text=“闯关失败“;,bt_continue.addEventListener(MouseEvent.MOUSE_DOWN,startGame);,3.3 具体步骤,玩耍完毕界面,较为简洁,代码如下:,stop;,level=1;,bt_restart.addEventListener(MouseEvent.MOUSE_DOWN,startGame);,它表示假设点击重玩按钮,玩耍将重新从第一关开头玩。,4,测试程序,测试玩耍,直到到达预期的效果。,以以下图为这个玩耍运行中的一个截图:,5,本章小结,关卡类玩耍的构造为:玩耍根底框架+参数化资源。,根底框架是每个关卡共有的,而参数化资源是可以共性化修改的。设计时,根底框架不能依靠于任何参数化资源,而参数化资源可以在根底框架的根底上实现独立的功能。,本例中,玩耍根底框架为玩耍主体界面,小兵的跑动范围,玩耍的规律模式单人角色扮演玩耍,人机交互等。而参数化资源为大炮、地雷、炮弹、障碍物等物件。,假设设计得当,增加关卡的工作就是可视化地布置场景的工作一样简洁。例如本例中的大炮,作为关卡的一个资源,在任何一个关卡里面,只要将大炮拖放出来布置好即可。,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 成人自考


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!