您的位置:首页网页设计Flash → Flash游戏制作--打靶

Flash游戏制作--打靶

时间:2004/11/7 2:24:00来源:本站整理作者:蓝点我要评论(0)


            
             
              
             
            

               
               

            



            

Flash射击类游戏现在已经有很多了,大部分是那种飞行射击类游戏,这此我们来学习制作一款比较另类的射击游戏—打靶,就象在靶场一样,远处摆放一个目标靶,你来进行射击,不过这个游戏玩还是有点难度的,因为游戏中的目标靶会一直慢慢的移动,可不是一动不动地等着你来打。(本例的.swf和.fla文件点击这里下载)

游戏的主界面如图1所示:


图1

游戏中有一个不断移动的方形目标靶,玩家可以控制一个瞄准器来射击,每次最高得分为5分,也就是必须射中靶心才可以,最低得分为1分,具体得分视射击结果来定,目标靶的右面是记分牌,用来记录射击次数和每次的得分,每次游戏可以打十枪,得分越高越好。

1.游戏中每次射击后对所得分数的判断是根据所射中的圆环,如果射中的是最外面的圆环,只能得一分,越往内部,得分越高,所以首先制作目标靶中的代表不同得分的圆环,因为在射击过程中圆环需要对鼠标的点击做出响应,所以圆环应该制作成Button.

新建一个Button按钮元件,命名为1,进入元件的编辑区后,使用椭圆工具绘制两个不同大小的正圆,然后将小圆放到大圆的内部,并将小圆的内部填充区域删除掉,然后使用文本工具在圆环上标注上分值,如图2所示:


图2


按照相同的方法制作其余四个代表不同分数的圆环,只不过分数越大的圆环,其内部的小圆半径就越小,同时给不同圆环标注上相应的分数,其余四个圆环分别如图3,4,5,6所示;


图3


图4


图5


图6

2.接下来制作瞄准器,新建一个Graphic图形元件,命名为gun,进入元件的编辑区后,使用绘图工具绘制如图7所示的瞄准器:


图7

在第4帧插入一个关键帧,将图7中的所有线条的宽度稍微减小,如图8所示,这样就可以达到瞄准器的伸缩效果:


图8

最后新建一个Movie clip影片剪辑元件,命名为mgun,将上面制作好的元件gun拖到编辑区中即可


3.下面来制作游戏中的关键部分,目标靶。新建一个Movie clip影片剪辑元件,命名为target,进入元件的编辑区后,添加四个图层,从下向上依此命名为bg,target,info和as。

选择图层bg,使用Flash提供的丰富的绘图工具绘制一个目标靶的背景图,可以根据自己的喜好来绘制,这里我们绘制的背景图如图9所示:


图9

最后将时间线延伸到第3帧。

回到图层target,将前面制作好的五个圆环1,2,3,4,5拖到编辑区中,将1排到最外层,将5放到最内层,并按照实际生活中靶的情况进行排列,如图10所示:


图10

最后将时间线延伸到第2帧即可。

回到图层info,使用文本工具在游戏背景的右侧绘制两个文本框,在属性面板中分别设置为Dynamic text动态文本框,并分别设置文本变量为b和c,分别代表游戏中的射击次数和每次的得分,然后使用文本工具在文本框旁边输入提示信息,如图11所示:


图11

然后在此层的第3帧插入一个空白关键帧,使用文本工具在背景上输入重玩的提示信息—replay,然后在下面绘制一个动态文本框,设置其变量名为a,用来显示最后的总得分,如图12所示;


图12
最后在图层as的第2帧添加AS: gotoAndPlay(1); 在图层as的第3帧添加AS: stop();

4.这里可能大家会问,控制游戏的Action动作脚本在哪里呢?我们可以仔细想一想,游戏中的主要动作就是玩家对目标靶进行的射击,所以游戏中主要的控制脚本应该加在前面的五个圆环中。

回到图层target,选中圆环1,添加如下AS:

on (release) {

a=Number(a)+Number(1);

//如果击中了圆环1,游戏总分为上次总分加1

b=Number(b)+Number(1);

//射击次数为当前次数加1

c=1

//当次射击得分为1

}

//如果击中了圆环1,游戏总分为上次总分加1

同样的给圆环2添加如下AS:

on (release) {

a=Number(a)+Number(2);

//如果击中了圆环1,游戏总分为上次总分加2

b=Number(b)+Number(1);

//射击次数为当前次数加1

c=2

//当次射击得分为2

}

给圆环3添加如下AS:

on (release) {

a=Number(a)+Number(3);

//如果击中了圆环1,游戏总分为上次总分加3

b=Number(b)+Number(1);

//射击次数为当前次数加1

c=3

//当次射击得分为3

}

给圆环4添加如下AS:

on (release) {

a=Number(a)+Number(4);

//如果击中了圆环1,游戏总分为上次总分加4

b=Number(b)+Number(1);

//射击次数为当前次数加1

c=4

//当次射击得分为4

}

给圆环5添加如下AS:

on (release) {

a=Number(a)+Number(5);

//如果击中了圆环1,游戏总分为上次总分加5

b=Number(b)+Number(1);

//射击次数为当前次数加1

c=5

//当次射击得分为5

}

最后的时间线如图13所示;


图13
5.最后回到主场景,新建两个图层,分别命名为target和gun,分别将元件target和gun拖到相应的图层,在属性面板中设置对象gun的实例名为move,然后在图层gun 的第一帧添加如下AS:

startDrag("/move", true);

Mouse.hide();

//拖动瞄准器并隐藏鼠标

对于图层target中的目标靶,我们可以设置一些Motion运动过渡,使其缓慢的移动,具体如何移动可以自己来觉得,无非是先向坐,再向上,再向右,最后再向下这样的干扰射击的运动。最后时间线如图14所示:


图14

这样,一个很好玩的打靶游戏就制作完成了,你也可以对本游戏进行适当的扩展,比如说设置十个圆环,最高得分为10,这样就更增加了游戏的可玩性

相关阅读 Windows错误代码大全 Windows错误代码查询激活windows有什么用Mac QQ和Windows QQ聊天记录怎么合并 Mac QQ和Windows QQ聊天记录Windows 10自动更新怎么关闭 如何关闭Windows 10自动更新windows 10 rs4快速预览版17017下载错误问题Win10秋季创意者更新16291更新了什么 win10 16291更新内容windows10秋季创意者更新时间 windows10秋季创意者更新内容kb3150513补丁更新了什么 Windows 10补丁kb3150513是什么

文章评论
发表评论

热门文章 没有查询到任何记录。

最新文章 Flash CS4基础入门 如何在Flash中打开一个定制的浏览器新窗口?学习ActionScript 3.0的6个好处几个小技巧精简Flash文件体积在Flash动画中添加“加为收藏”和“设为首页

人气排行 Flash游戏制作--小熊拼图用Flash实现几种镜头效果Flash制作动画知识:遮罩Flash如何做鼠标指针样式Flash制作环形文字Flash制作声情并茂的电子相册实例讲解flashMTV制作全过程(3)鼠标效果系列教程:游动的鱼