炸弹猪FLASH游戏设计.docx
- 文档编号:11381431
- 上传时间:2023-02-28
- 格式:DOCX
- 页数:22
- 大小:443.89KB
炸弹猪FLASH游戏设计.docx
《炸弹猪FLASH游戏设计.docx》由会员分享,可在线阅读,更多相关《炸弹猪FLASH游戏设计.docx(22页珍藏版)》请在冰豆网上搜索。
炸弹猪FLASH游戏设计
FLASH游戏设计
综合实训技术报告
课题名称
FLASH游戏设计
炸弹猪游戏设计
系/专业
计算机与软件学院\计算机多媒体技术
班级
计媒0921
组别
04
学生姓名
张亚莉何洪英徐雪秋钱晶黎勤勤张跃
指导教师:
梁菊华王萍
2011年6月23日
前言
FLASH制作是本次实训的主体,辅助于程序设计,更好的培养学生的动手能力和思维能力。
通过应用Flash、Photoshop等多媒体软件来实现这次实训的主题“炸弹猪FLASH游戏设计”。
在不断完善和修改的过程中,我们能够较为系统的掌握应用Flash或Photoshop等应用程序的能力。
“FLASH游戏制作实训”是信息类教学中一门必修的重要的实践课程,它属于专业基础课。
培养学生运用工程化的方法开发多媒体应用软件项目,提高项目实践能力,规范项目实践活动。
锻炼并提高学生掌握和运用多媒体元素创建多媒体技术应用程序的能力。
其实实训的最终目的不是游戏做的多么的好,而是你能从游戏的设计中学到什么,你是否也和其他人一样获益良多了呢。
学生通过本课程的学习,可以培养学生健康向上的思想、审美和鉴赏能力、团结互助的意识。
与此同时,可以锻炼学生的思维能力与创新能力,在制作游戏过程中也学到了一些更好的搜集素材整理素材方法。
为以后我们的学习和工作提供了很好的实践意义。
目录
第一章绪论4
1.1游戏的操作环境4
1.2FLASH软件的功能简介4
1.3游戏的设计思想5
第二章游戏的概要设计5
2.1炸弹猪游戏地图的设置5
2.2炸弹猪游戏角色的设计6
2.3炸弹猪游戏动画的设计6
2.4炸弹猪游戏奖励的设计7
第三章游戏的详细设计7
3.1游戏主程序的实现7
3.2游戏地图的设置9
3.3游戏角色的设计11
3.3.1主角的设计11
3.3.2敌人的设计12
3.4游戏动画的设计13
3.4.1炸弹效果动画的设计13
3.4.2失去生命动画的设计14
3.5游戏奖励的设计14
3.5.1奖励类设计14
3.5.2炸弹类设计15
3.6游戏音效的设计15
第四章实训总结16
致谢.............................................................
第一章绪论
1.1游戏的操作环境
操作系统平台:
WindowsXP
软件:
FLASHCS3,PhotoshopCS2
1.2FLASH软件的功能简介
Flash是一种创作工具,设计人员和开发人员可使用它来创建演示文稿、应用程序和其它允许用户交互的内容。
Flash可以包含简单的动画、视频内容、复杂演示文稿和应用程序以及介于它们之间的任何内容。
通常,使用Flash创作的各个内容单元称为应用程序,即使它们可能只是很简单的动画。
您也可以通过添加图片、声音、视频和特殊效果,构建包含丰富媒体的Flash应用程序。
Flash特别适用于创建通过Internet提供的内容,因为它的文件非常小。
Flash是通过广泛使用矢量图形做到这一点的。
与位图图形相比,矢量图形需要的内存和存储空间小很多,因为它们是以数学公式而不是大型数据集来表示的。
位图图形之所以更大,是因为图像中的每个像素都需要一组单独的数据来表示。
要在Flash中构建应用程序,可以使用Flash绘图工具创建图形,并将其它媒体元素导入Flash文档。
接下来,定义如何以及何时使用各个元素来创建设想中的应用程序。
在Flash中创作内容时,需要在Flash文档文件中工作。
Flash文档的文件扩展名为.fla(FLA)。
Flash文档有四个主要部分:
舞台是在回放过程中显示图形、视频、按钮等内容的位置。
在Flash基础中将对舞台做详细介绍。
时间轴用来通知Flash显示图形和其它项目元素的时间,也可以使用时间轴指定舞台上各图形的分层顺序。
位于较高图层中的图形显示在较低图层中的图形的上方。
库面板是Flash显示Flash文档中的媒体元素列表的位置。
ActionScript代码可用来向文档中的媒体元素添加交互式内容。
1.3游戏的设计思想
游戏地图的设置►►游戏角色的设计►►游戏动画的设计►►游戏奖励的设计►►游戏音效的设计
第二章游戏的概要设计
以下主要以在FLASH软件中制作成型的图形示例
2.1炸弹猪游戏地图的设置
2.2炸弹猪游戏角色的设计
←主角Pig
←敌人A
←敌人B
2.3炸弹猪游戏动画的设计
2.4炸弹猪游戏奖励的设计
炸弹数量奖励
主角生命奖励
炸弹范围奖励
主角速度奖励
主角过关奖励
2.5炸弹猪游戏音效的设计
主要是下载资源和利用FLASHCS3中自带声音
第三章游戏的详细设计
3.1游戏主程序的实现
主要以流程图形式展示:
3.2游戏地图的设置
游戏地图主要采用一维数组的存储方式,主要数字实例化。
//对象设定值
//0:
空白格子
//1:
实心墙
//6:
空心墙
//7:
奖励
//9:
过关“门”的所在位置
//10:
主角出现的位置
//21-27为敌人设定,A类敌人不能穿越空心墙,B类敌人可以
//21:
慢速A类敌人,速度1
//22:
普通A类敌人,速度2
//23:
快速A类敌人,速度2.5
//24:
超快速A类敌人,速度4
//25:
慢速B类敌人,速度1
//26:
普通B类敌人,速度2
//27:
快速B类敌人,速度2.5
因为我们做的界面是420*460的,所以我们把每个长度分为20cm一个也就是墙的边长为20cm,而地图的边长为21所以根据每一关的难度不同我们所形成地图的大小不同。
//第一关设置数组13*13大小敌人类型9
(1)7(3)21(3)22
(1)
//第二关设置数组17*17大小敌人类型9
(1)7(4)21(3)22(3)23(3)
第三,四关设置数组21*21大小敌人类型9
(1)7(5)22(3)23(3)24(3)25(3)
3.3游戏角色的设计
3.3.1主角的设计
主角主要就是两个属性,移动速度和移动方向。
然后就是根据设置的地图判断主角的移动是否能进行,主要是在空白地方能够移动,碰到实心墙和空心墙都不能移动。
而且主角一次只能移动一个单元格,移完后就会停下来。
下面是主要实现代码:
//主角移动的函数
//在一个方向上移动一个单位后停止
privatefunctiononFrameHandler(event:
Event):
void{
switch(Direction){
case"left":
this.x-=Speed;
if((this.x%BombPig.mapUnit)==0){
Direction="stop";
}
break;
case"right":
this.x+=Speed;
if((this.x%BombPig.mapUnit)==0){
Direction="stop";
}
break;
case"up":
this.y-=Speed;
if((this.y%BombPig.mapUnit)==0){
Direction="stop";
}
break;
case"down":
this.y+=Speed;
if((this.y%BombPig.mapUnit)==0){
Direction="stop";
}
break;
default:
break;
}
}
}
}
3.3.2敌人的设计
敌人主要有敌人对象的属性,包括值多少分、运动方向、速度以及是否可以穿越空心墙。
//随机改变移动的方向
publicfunctionchangeDirection():
void{
vard:
int=Math.floor(Math.random()*4);
switch(d)
{
case0:
Direction="up";
break;
case1:
Direction="down";
break;
case2:
Direction="left";
break;
case3:
Direction="right";
break;
default:
break;
}
}
//移动处理函数
//对BombPig.mapUnit取模的计算保证敌人移动一个完整的单位
//移动一个完整单位后,设定移动状态为false
privatefunctiononFrameHandler(event:
Event):
void{
if(bmove){
switch(Direction){
case"left":
if((this.x%BombPig.mapUnit)==0){
bmove=false;
}
else{
this.x-=Speed;
}
break;
case"right":
if((this.x%BombPig.mapUnit)==0){
bmove=false;
}
else{
this.x+=Speed;
}
break;
case"up":
if((this.y%BombPig.mapUnit)==0){
bmove=false;
}
else{
this.y-=Speed;
}
break;
case"down":
if((this.y%BombPig.mapUnit)==0){
bmove=false;
}
else{
this.y+=Speed;
}
break;
default:
break;
}
}
}
}
}
3.4游戏动画的设计
3.4.1炸弹效果动画的设计
炸弹爆炸效果主要包括两方面,一个是爆炸显示时间是0.15秒,第二就是爆炸完后要把效果隐藏。
//状态State表示显示这个效果
//设定效果显示时间为0.15秒
functionExplosion():
void{
State=true;
timer=newTimer(150,1);
timer.addEventListener(TimerEvent.TIMER_COMPLETE,onTimerHandler);
timer.start();
}
//0.15秒后隐藏
privatefunctiononTimerHandler(event:
TimerEvent):
void{
State=false;
this.visible=false;
}
}
}
3.4.2失去生命动画的设计
主角只有在被敌人吃掉或者被炸弹炸死的时候才会失去生命所以当条件满足时动画就会播放。
动画持续1秒,播放完成后隐藏。
//显示1秒,和动画的帧数相关,保证效果完成播放
publicfunctionbloodShow():
void{
this.visible=true;
this.gotoAndPlay(0);
vartimer:
Timer=newTimer(1000,1);
timer.addEventListener(TimerEvent.TIMER_COMPLETE,onTimerHandler);
timer.start();
}
//效果播放完成后隐藏
privatefunctiononTimerHandler(event:
TimerEvent):
void{
this.visible=false;
}
}
}
3.5游戏奖励的设计
3.5.1奖励类设计
packageclasses{
importflash.display.MovieClip;
//奖励类,场景中不同的奖励都继承于此类
publicclassBonusextendsMovieClip
{
//唯一的属性,奖励的类型
//分为速度奖励、炸弹数量奖励、爆炸范围奖励和生命奖励
//过关的“门”也属于奖励
publicvarType:
String;
functionBonus():
void{
}
}
}
3.5.2炸弹类设计
炸弹爆炸主要是设定3秒钟后爆炸,并且爆炸范围刚开始构造的时候只有一个格子。
//构造函数中指定必须的属性值
//Range表示炸弹爆炸的范围
//State表示炸弹是否进入爆炸状态
functionBomb():
void{
Range=1;
State=true;
bup=true;
bdown=true;
bleft=true;
bright=true;
//设定3秒后爆炸
vartimer:
Timer=newTimer(3000,1);
timer.addEventListener(TimerEvent.TIMER_COMPLETE,onTimerHandler);
timer.start();
}
//状态State为false表示炸弹进入爆炸状态
privatefunctiononTimerHandler(event:
TimerEvent):
void{
State=false;
}
}
3.6游戏音效的设计
packageclasses{
importflash.media.Sound;
//游戏中使用到的音效
publicclassGameSound
{
//炸弹爆炸的音效
publicstaticconstsbomb:
Sound=newsBomb();
//获得奖励的音效
publicstaticconstsbonus:
Sound=newsBonus();
//主角失去一次生命的音效
publicstaticconstsdie:
Sound=newsDie();
//过关的音效
publicstaticconstspass:
Sound=newsPass();
}
}
第四章实训总结
四周实训的过程是短暂的但这段旅途给人留下的印象却是永恒的。
在这个过程中掺杂许多酸甜苦辣。
有迷茫、有失落、也有气馁,虽然这段旅途是如此漫长但我们却从未放弃。
这段旅途深深地印下了我们团队奋斗的足迹,发扬了团队坚持不懈,永不言弃的精神。
虽然这个项目的难度超出了我们小组能接受的极限,但我们却从未因此停止前进的脚步。
在实训中我们感受最深的几点:
第一:
实训的目的不在于有所成,但必有所得。
俗话说:
众人拾柴火焰高。
团队的核心力量就是一致的精神。
要不畏艰难,勇往直前,为团队尽心尽力。
团队还必须有一个英明的领头人。
群龙不能无首。
队长是团队发展的指路明灯,队员必须要遵守队长提出的合理要求,力求完美。
第二、实训是让每个同学检验自己的综合能力。
在自己动手劳动的过程中我们清晰的了解到自己的个人特长和优势,这为以后我们自己的发展道路更好的指名了方向。
因此,每个同学都应该多在实践中提高自己的能力。
第三、此次实训,我们深深体会到了积累知识的重要性。
俗话说:
“要想为事业多添一把火,自己就得多添一捆材”。
在这个竞争如此激烈的社会中,只有努力充实自己才能够站得住不被淘汰。
最后、实训是让每个同学确定自己的未来方向。
以前缺乏实践,无法认识社会企业的需求,因此,对自己的未来也十分迷茫,但通过这次实训我们体会到了我们这一行的艰辛和干这一行所需要必备怎样的能力,只有我们确定了自己未来的方向、定下目标才能给自己定位,并努力提升自己让自己更充实。
直到此时我们才深深的理解书到用时方恨少这句话。
由于平时对于学习不是那么的热情,现在才发现它对我们也比较冷漠。
很多知识点我们都理解的不够深刻,模模糊糊的。
以后的学习中这种错误切记不能再犯。
虽然说这次实训就这样结束了,但是在实训中我们所学到的、所感悟到的都将在今后的学习中帮助到我们。
我们的不足,我们今后会更加努力的去弥补。
争取在以后的实习中,我们能发挥自己的个人特长。
小组成员小结:
徐雪秋:
刚开始的时候也像以往一样先玩游戏,把要实现的游戏规则理清楚,玩游戏的时候感觉好简单,游戏道具不多,规则也不算多,但很完整的一个游戏。
然后是组长分配任务,我是负责动画部分的制作。
这正合我意,程序我真的很弱,读程估计就能读得懂,编程就难了。
动画部分不多也不难,还是三个人做,关键是大家都想做出一个比老师给的模板更有创意更美观的场景来,鉴于思维方式和审美观的不同在创意和美观的风格上出现来很大的分歧,各持己见,最后结果却是先是每个人把自己负责的那部分做出来,然后再做修改。
任务既定。
,大家就开始了制作。
先是在网上参考别人的优秀作品,网上的小游戏各种各样,都做得很完整精细,就借鉴别人的做出有自己风格的界面,最后发现,可能是看过太多别人的优秀作品了,思维太固定了,做出来的东西很平常相比老师给的模板没有什么突出的地方,于是小组讨论后决定重新在做,刚开始做的开场动画和场景用的素材都是直接从网上Down下来的,只是加了些动画效果而已,这样自己好像什么都没有做,于是决定自己画,不管效果如何,先画了再说。
虽然要画的东西不算多但是有大小和动作的要求,我想总归是小游戏,剧情无需太劲爆耀眼,往比较轻松愉快的风格发展了,画了个大眼睛咕噜咕噜转个人认为很可爱的坏人,但是因为规格太小了,动作设定有点难,怎么动都很不明显,最后只是把它的獠牙动了动,完成的时候自己看着也还算满意
这次的实训时间比以往的长,但也比以往的有趣,所以大家都很积极,在讨论组讨论的时候都能各抒己见,从他们身上学到很多东西。
总的来说使一次不错的实训。
钱晶:
在这4周实训时间里,我学到了很多东西,不仅仅是基本的课本知识,最重要的是让我明白了很多为人处世的道理。
这次的实训是分组合作,每个组长给组员分配任务,分工合作。
不仅能提高效率还能促进大家的团结精神。
我被分配做炸弹猪的基本美工,制作猪和替换一些道具。
在制作中,我发现一些看起来简单的操作,在实际运作中还是需要谨慎对待的,不能忽略些细节的东西,这就是所谓的细节决定成败。
之后又熟悉了下程序,理解了基本的运行环境。
何洪英:
通过为期四周的Flash实训,我从中收获不少。
本学期一直在学习Flash软件,在这次实训中,更对Flash有了更深入的了解与应用。
初学时,总以为能熟练掌握了Flash,就能做出很炫的作品,然而当我能轻松的操作时,才发现并不是自己想象的那么简单。
有时候、更重在设计与创意,而不是自己所想的草草了事,要有思想、有思路,自己所做出来的东西才可能给人以不同的感觉。
本次综合实训的学习,培养了我们系统、完整、具体完成一个系统开发项目所需的工作能力,通过信息收集、方案比较决策、制定计划、实施计划任务和自我检查评价的能力训练以及小组实训的协作配合,为我们以后在实习、工作中奠定了一定的基础。
在此期间,我们通过上网查资料,图书馆查阅图书,学到了很多上课时没有学到的东西,也让我更加感受到了动手能力的重要性。
可以说,实训过程中、我们每个人都有了自己的收获,该游戏的设计与开发过程是繁琐的,但小组的各个成员都表现的很积极,相互帮助、一起分析、解决实训过程中出现的要点,也让我明白了理论与实践相结合的必要性与重要性。
“纸上得来终觉浅、觉知此事要躬行,”让我深深感觉到了自己在实际应用中的专业知识还是很缺乏。
在经过复杂而忙乱的设计编程后,我们完成了小组的总任务,虽然过程没有预想的那么顺利,但在排除了各种原因的条件下,我们看到了更多自身的不足并加以改进与完善。
同时也使我深刻体会到,学习与实践之间的距离,只有不断地吸取理论知识,在实践中进行磨练,才能适应现今科技高速发展的计算机时代。
总结一下在此次实训过程中的收获主要有四个方面:
一是直接参与项目开发流程学到了实践知识,同时进一步加深了对理论知识的理解,使理论与实践知识都有所提高;二是提高了自己的动手操作能力,为以后的实习工作取得了一些实践经验;三是在实训过程中有自己的小组,彼此之间互相交流、互相帮助,为我们共同的目标而努力,让我看到了小组的每一个成员对此次实训的热情以及每个人的学习能力与方法,都是值得我去学习的;于此同时,更可以看到实训辅导老师们的尽职尽责。
此次实训让我觉得很充实。
也使我巩固了自己对Flash、PhotoShop软件的学习。
我想这次试训结束的同时、也意味着自己以后学习的一个新的开始,也相信、自己在以后的学习中会进一步改进自己的不足,力求完善。
黎勤勤:
在这次四周的实训中,我对Flash软件有了一个更深的了解认识,首先,创意是制作flash的第一步,也可以说是最重要的一步。
一个好的作品是要有好的创意,要求新或者是在平淡中找到吸引人的地方。
这是最难也可以说是最简单的一步,因为有时苦苦地思索,却很难找到一个好的创意;有时候,无意之中,却有一些好的创意一闪而过,得来全不费工夫。
创意之后就应该是构思,也就是在大脑中想象怎样组织画面,每个画面该有些什么内容,这些画面又该如何衔接起来,形成一个整体。
接下来就是制作。
我学得,最主要的是多练,光看书,到了真正用的时候,还是笨手笨脚的。
所以通过这次实训,让我在Flash的学习方面有了一定的提高。
这次实训也让我看到了每个小组同学的学习热情以及小组的合作精神,还有老师的辛勤监督与辅导。
我相信,通过以后的再接再厉,我在Flash的学习中更会有所提高的,对于自己的不足也会加以改善,做到更上一层楼!
张跃:
这次炸弹猪的的实训主要强调的是团队合作,开始时老师发的资料还有很多看不懂,在上网查阅资料和与小组同学
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 炸弹 FLASH 游戏 设计