Flash游戏制作--记忆游戏


来源:   

  朋友,想测验一下你的记忆力吗?不用去找那些枯燥的试题来烦自己,我们可以用Flash MX来制作一个有趣的记忆力测验小游戏,既可娱乐自己,又可考察自己的记忆力。

  此记忆游戏如图所示,游戏界面虽然简单,但要玩好却不容易,除非你有较好的记忆力。它的玩法大家可能都比较熟悉,游戏中共有12个相同的圆盘,每个圆盘下面都隐藏着一幅图案,12幅图案两两相同共6对,而游戏的目的就是以最快的速度打开圆盘找完相同的图案。此游戏的设计思路是,当鼠标连续点击打开矩阵中的两个圆盘后,对前后显现的图案进行判断,如果图案相同就从矩阵中去除这两个图案及上面的圆盘,如果不同则用圆盘将图案重新覆盖,而这就考验了大家对各个图案位置的记忆力,只找准所有的6对图案后,游戏才算胜利。其图案显示和覆盖的效果制作起来很简单,使用Motion过渡动画就行了,而图案相同与否的判断是借助Action来进行的。



  Flash记忆游戏(9s51.tif)

  下面我们就来学习如何制作这个游戏,具体步骤如下(编者注:为了方便Flash初学者,此Flash游戏及其源文件可在http://www.pcdigest.com/download下载,大家可以直接通过修改.fla文件来快速打造具有自己风格的记忆游戏)。

  1.我们先要准备6种不同的图案,它们可以任意寻找,不过最好用一些颜色和形状相似的图案,这样玩起来才有迷惑性,才能提高玩家的分辨难度,增强游戏趣味。在这里我们准备了如图所示的6种不同的图案,将它们导入Flash中,分别存为六个图形符号(Graphic)。



  6种不同的图案(9s52.tif)

  2.我们还要准备一个游戏中覆盖图案的圆盘图片,这个可以自己画,不过它的大小要稍大于上一步中我们所选用的图案,以便能将它们完全覆盖。把这张圆盘的图片导入Flash,将它存为按钮符号(Button)。

  3.在游戏中,由于要显示每找出一对圆盘后所剩余的图案对数量,所以还需制作6个数字。如图,分别制作从1到6的图形符号(Graphic)。



  6个不同的数字图(9s54.tif)

  4.下面我们就要制作游戏中圆盘和图案的动画效果了,这些动画主要对应玩家的各种鼠标操作,如选中、点击等。其中六对图案的动画效果制作方法是相同的,所以我们在此仅讲其中一对的制作。

  首先,在Flash中新建一个movie clip符号,命名为balls1。在符号的编辑状态下新建两个图层,在第一个图层的第7帧到第11帧建立圆盘由有到无的motion动画效果,在第21帧到第25帧建立圆盘由无到有的Motion动画效果。在第二个图层中的第7帧到第12帧建立一个图案由无到有的动画效果,从第13帧到第20帧建立一个图案的放大效果,从第20帧到第25帧建立一个图案由有到无的motion效果。



  动画效果的时间线 (9s56.tif)

  使用相同的方法再建两个新图层,照上述步骤制作出完全相同的motion效果,不过圆盘和图案的位置要与上面的不同(位置大家自定义),最好在4×3的矩形范围内。



  4×3的矩形范围(9s55.tif)

  然后,我们要给动画添加Action。

  新建一个图层,命名为timeline,此游戏所有的Action都集中在此图层,方便编辑和修改。

  在第1帧添加as为gotoAndStop(5);

  //跳到第5帧,后面我们要在第5帧添加“stop();”,使游戏一开始处于停止状态。

在第2帧添加as为gotoAndStop(3);

  在第3帧添加as为stop();

  在第4帧添加as为gotoAndStop(3);

  在第5帧添加as为 stop();

  在第6帧添加as为gotoAndStop(5);

  分别在第12和第31帧添加as为stop();

  //游戏运行到此帧时停止播放。

tellTarget ("../balls3") {

nextFrame();

}

tellTarget ("../balls4") {

nextFrame();

}

tellTarget ("../balls5") {

nextFrame();

}

tellTarget ("../balls6") {

nextFrame();

}

tellTarget ("../balls7") {

nextFrame();

}

  //先分别指定“主场景”中的balls3到ball7五个Movie clip,然后分别运行每个Movie clip当前帧的下一帧。

  分别在第13和第32帧插入关键帧,然后添加如下Action。

play();

  //影片运行到此帧时继续播放。

tellTarget ("../balls3") {

nextFrame();

}

tellTarget ("../balls4") {

nextFrame();

}

tellTarget ("../balls5") {

nextFrame();

}

tellTarget ("../balls6") {

nextFrame();

}

tellTarget ("../balls7") {

nextFrame();

}

  //分别指定主场景中的balls3到ball7五个Movie clip,运行每个Movie clip当前帧的下一帧。

  分别在第25和第44帧添加as为gotoAndStop(5);

  分别在第58和第77帧添加如下as。

tellTarget ("../balls8") {

nextFrame();

}

  //balls8是Mc num的实例名,用来控制游戏剩余圆盘对数的变化,当跳到下一帧则数字减1。

  分别在第63和第82帧添加as为gotoAndStop(3);

  上面所有as的所在帧并不是随意添加的,而是与圆盘及图案所有Motion的所在帧相对应,这样才能在游戏中调用不同的Motion。

  最后,按照上面的方法,再制作从balls2到balls6的其它5个类似的Movie clip影片剪辑,不同之处是每对圆盘背后的图案要不相同。

  5.在此我们要制作记数变化的效果。首先新建一个Movie clip影片剪辑,插入六个关键帧,分别将前面做好的6个数字符号按逆续放到第1到第6关键帧中(第1关键帧放数字6……第6关键帧放数字1)。然后新增一个图层,命名为timeline,同样插入六个连续的关键帧,并给每个关键帧都添加Action为“stop();”,让影片运行到每帧都停下来。



  记数变化的时间线(9s57.tif)


  6.下面要制作的是游戏的主控制Movie clip影片剪辑,此影片剪辑用于总体控制。新建一个Movie clip影片剪辑,命名为“主电影”。在进入Movie clip影片剪辑的编辑状态后,分别新建六个图层,把前面做好的balls1到balls6六个图案对分别放到这六个图层之中,排列成4×3的矩形方阵。



  4×3的矩形方阵(9s58.tif)

  再新建一个图层,将符号num拖到编辑区上合适的位置,在其第一帧添加Action为“play();”,最后将所有图层的时间线延长到第7帧。



  总体控制的时间线(9s59.tif)

  7.现在进行最后的任务——布置主场景。很简单,只须将Movie clip影片剪辑“主电影”拖到主场景中合适的位置就可以了,然后存盘、运行测试并导出为.swf文件。



  测试游戏(9s10.tif)

  到此为止,一个简单而有趣的Flash记忆力游戏就做好了,如果大家有兴趣,还可以在它的基础上增加一些功能,如增加游戏中图案对的数量、增加记时或限时功能等。先不多说了,快开始游戏吧!

编辑:

相关内容

 娱乐专题

more...

高峰私生子

王伯昭被打

傅彪肝癌晚期

赵薇餐馆打人事件

《云南映象》图集

张铁林拖欠中介费

女医生状告赵忠祥

高虎被捕事件

演绎经典美丽

解读《十面埋伏》

揭示明星美丽秘诀

五颜六色娱乐圈

明星纤体大比拼

《绿茶》精彩影评

天地英雄

吕丽萍群星艺术学校被起诉

于娜出道前被包养是真是假?

香港英皇贪污丑闻追踪

多少明星追忆中

2003环球小姐大赛

 

 叨叨专栏

more...

冯小刚,你怎么敢抽"上帝"?

流氓与流氓

娱乐媒体,请站直一点

原来张铁林不是中国人!

《神雕侠侣》的悲惨前途

男人,要硬派不要阴柔

请不要随便脱裤子

李欣,《自娱自乐》的挺滋儿!

不服没用,人家就是红了!

陆毅演戏吧,别唱歌了。

 

 

 
报业集团
- 版权声明 - 广告业务 - 联系方式
Copyright (C) 2001-2002 dzwww.com. All Rights Reserved
大众报业集团网络中心主办
Email:webmaster@mail.dzdaily.com.cn