日期:2023-01-24 阅读量:0次 所属栏目:计算机应用
摘 要:Flash小游戏已经成为人们休闲娱乐的重要选择,本文通过介绍“五子连珠”游戏的制作来了解Flash小游戏的制作开发过程。
关键词:Flash;游戏;开发
相对于体积庞大的单机游戏或需要消耗大量时间精力的网络游戏,小游戏越来越受到当代人的喜爱,在繁忙的学习工作之余,花几分钟时间玩点小游戏有助于娱乐休闲放松。小游戏无需安装,玩法简单,耐玩性强,无依赖性,有单机版也有网络版。
目前小游戏主要以Flash游戏为主,Flash游戏是以SWF为后缀的游戏的总称。FLASH技术包括ActionScript可编程脚本解析器以及Flash Player 解析器,由于脚本功能强大,播放器不仅可以支持流行的IE浏览器,还可以支持Firefox, Opera, Safari等浏览器, Flash游戏可以得到广泛流传。如何开发Flash游戏成为我们的主题,本文将通过现在流行的“五子连珠”游戏的制作过程介绍一下Flash游戏的开发。
一、 游戏设计思路
游戏设计主页面,在主页面设置开始游戏和帮助信息按钮,进入游戏后有游戏棋盘区域,3个彩球和分数统计区域,声音、重新开始,返回菜单按钮。在游棋盘中中每移动一次彩球,就会有三个彩球加入棋盘,如果移动一个球,能组成五个以上同色球,就可消去一路,同时没有三个球加入,移动球到达的位置要有通道可过,根据消去的球记分,当彩球布满整个棋盘时游戏结束,游戏过程中可关闭声音。游戏流程如图1。
图1 游戏流程
二、 游戏设计过程
1、元件的创建
1.1 图形元件
图形元件可以到网络下载相关图片导入库中使用,游戏区域中的彩球元件、棋盘格元件等可通过Flash中绘图工具进行绘制。
1.2 影片剪辑元件
需要制作一些相关的影片剪辑元件,比如彩球缩放动画元件,声音开关动画元件,倒计时动画元件等。
1.3 按钮元件
游戏中需要使用鼠标将彩球移到棋盘的其他地方,采用按钮控制彩球的方法,因此需要对彩球添加按钮元件,还需要制作开始、重新开始、返回菜单、帮助等按钮元件。
2、声音的导入
可到网络上下载相关的音频文件导入库中使用。声音文件必须先进行定义才可以进行播放,比如开始声音先进行定义start = new Sound(); Sound(""start0"");播放时可用(0, 1)。对声音文件开关按钮代码如下:
on (release) {
if (_) {
_=false;}
else{_ = true;}
_._visible=mone;}
3、游戏相关功能实现
3.1 界面链接设计
元件设计好之后主要采用帧设计方面来区分界面,通过不同按钮进入不同帧即不同页面,比如进入开始界面之后点击开始按钮进入第4帧游戏界面。
on (press){
();
removeMovieClip (""ballbutton1"");
removeMovieClip (""ballbutton2"");
gotoAndStop(4);}
on (rollOver){
_();}
3.2 彩球的变化
在游戏过程中,彩球的变化是我们制作的重点,需要对彩球的多种状态定义不同的函数以便于我们进行调用,根据彩球在棋盘中进行移动,定义函数moveball();彩球在移动过程有多条路径,需要判断移动路径有没有被堵住,因此定义了一个找寻路径函数searchpath();彩球在移动过程中路径的显示函数showpath();彩球随机获取函getballs();彩球随机生成位置函数randposition();检测彩球满足消除条件函数checkballs();彩球被消除函数drawball()。这些函数也被安排在第4帧内
棋盘按钮即是对这些方法的相关调用,如下
on (press){
if (_nu == 1 && _ble == 1)
{ getxy();
if (_root.m[tx][ty] == -1 && ball_on[0] != -1)
{ if (ball_on[0] != -1)
{ searchpath(ball_on[0], ball_on[1], tx, ty);}
else{if (moveok == 1 && fillok == 1)
{randposition();
if (end == 1)
{_dPlay(6);} // end if
rand();getballs();} // end if
fillok = 1;
} // end if
} // end if
} // end else if
}
3.3 分数计算
游戏中得分规则是五个或更多的彩球排在一直线或者斜线时,彩球将被消除,所得分数等于消除的个数乘以2,相关代码score = score + 2 * removed_ball_No。
3.4 游戏结束
当彩球布满棋盘时,即彩球数量大于等于81个时,游戏结束,进入游戏结束界面,游戏结束界面在第7帧,代码如下:
if (all_ball >= 81)
{end = 1;
gotoAndPlay(7);
} // end if
三、 小结
由于Flash游戏越来越受欢迎,Flash软件功能越来越强大,Flash开发的游戏种类也将越来越多,为了能够吸引更多玩家的注意就必须更注意精美的游戏界面以及简单易懂的游戏规则。
参考文献:
[1]向超,Flash CS4动画设计,兵器工业出版社,2010
[2]肖刚,Flash游戏编程教程,清华大学出版社,2009 本文链接:http://www.qk112.com/lwfw/jsjlw/jisuanjiyingyong/242174.html
下一篇:浅谈C语言实验教学的革新与实践