多媒体(flash)技术课程设计(包含全部的源文件.fla和源代码文件)

更新时间:2023-08-30 10:58:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

多媒体(flash)技术课程设计(包含全部的源文件.fla和源代码文件)

为了更好的帮助同学们学习,此文档还包含全部的.fla源文件和源代码文件,有需要的同学请查看该作者的百度空间!

计算机科学与技术学院课程设计成绩单

多媒体(flash)技术课程设计(包含全部的源文件.fla和源代码文件)

优秀:90分~100分 良好:80分~89分 中等:70~79分 及格:60~69分 不及格0分~59分

武汉科技大学计算机科学与技术学院制表

计算机科学与技术学院

课 程 设 计 报 告

课程名称: 计算机多媒体技术 专 业:班 级: 2012级 2 班 学 号: ************ 姓 名: ***** 指导老师: 李红斌

多媒体(flash)技术课程设计(包含全部的源文件.fla和源代码文件)

二〇一三年 5 月 28 日

《计算机多媒体技术》课程设计报告

题目:打鸭子射击小游戏 日期:2013.05.28 班级:计算机科学与技术1202班 学号:*********** 姓名:*****

一.设计思想

就像我们日常玩的射击游戏一样,当子弹打中鸭子时,鸭子就会死亡,同时分数就会增长,这个打鸭子射击小游戏在设计时,首先要考虑的是背景图片,为了搭配游戏play的环境,好的界面固然很重要,当然我们计算机专业毕竟不是很擅长设计,所以在这方面还有待加强。然后就得考虑游戏的功能了,这个射击小游戏设计了开始游戏按钮,分数文本框,定时器文本框,鸭子的飞行,子弹的设计,射击目标随着鼠标的运动以及重新开始按钮,最后就是用as3.0编写代码实现上述功能。

二.应用主要技术说明

这个小游戏用到的设计并不多,而主要用到的是as3.0代码,在设计方面主要运用到一些工具,例如:要拖动背景图片运用到“选择工具”,对背景图片进行形状变换用到“任意变形工具”,制作按钮用到“矩形工具”和“颜料桶工具”,在元件中制作鸭子,制作子弹都用到“椭圆工具”和“部分选取工具”以及“任意变形工具”;在代码方面,用到了事件处理函数,例如:Mouse Click事件,进入帧事件,还用到了定时器,以及事件帧听,舞台上对象的方法和属性。而完成了此项任务的制作。

三.实现步骤

1.解析打鸭子游戏的制作过程:

开始界面:

多媒体(flash)技术课程设计(包含全部的源文件.fla和源代码文件)

打鸭子界面

多媒体(flash)技术课程设计(包含全部的源文件.fla和源代码文件)

子弹射击的界面:

多媒体(flash)技术课程设计(包含全部的源文件.fla和源代码文件)

鸭子被打中的界面:

多媒体(flash)技术课程设计(包含全部的源文件.fla和源代码文件)

游戏结束界面:

多媒体(flash)技术课程设计(包含全部的源文件.fla和源代码文件)

2.游戏运行过程图:

多媒体(flash)技术课程设计(包含全部的源文件.fla和源代码文件)

3.设计步骤:

(1)元件的制作:

~”在地上的鸭子”元件制作:新建元件,在弹出的文本框中将“名称”

命名为“在地上的鸭子”,类型选为影片剪辑,将“为actionscript导出”勾选上,点击确定进入编辑元件的界面,利用“椭圆工具”和“部分选取工具”以及“任意变形工具”设计出一个鸭子的形状,并利用传统补间动画制作出鸭子来回游动的动画。 ~“在天空飞行的鸭子”元件制作:新建元件,在弹出的文本框中将“名

称”命名为“在天空飞行的鸭子”,类型选为影片剪辑,将“为actionscript导出”勾选上,并在“类”中命名为“bird”,点击确定进入编辑元件的界面,利用“椭圆工具”和“部分选取工具”以及“任意变形工具”设计出一个鸭子的左右翅膀,并利用传统补间动画制作出鸭子飞行的动画。

~“打落的鸭子”元件制作:新建元件,在弹出的文本框中将“名称”

命名为“打落的鸭子”,类型选为影片剪辑,将“为actionscript导出”勾选上,并在“类”中命名为“dlyz”,点击确定进入编辑元件的界面,利用“椭圆工具”和“部分选取工具”以及“任意变形工具”设计出一个鸭子被击中后的状态和掉落后的状态,并利用传统补间动画制作出鸭子飞行的动画;在此元件的第一帧中还要加入as3.0代码:stop()。

~“子弹”元件制作:新建元件,在弹出的文本框中将“名称”命名

多媒体(flash)技术课程设计(包含全部的源文件.fla和源代码文件)

为“子弹”,类型选为影片剪辑,将“为actionscript导出”勾选上,并在“类”中命名为“tan”,点击确定进入编辑元件的界面,利用“椭圆工具”和“部分选取工具”以及“任意变形工具”在第一帧设计出一个子弹的形状,在第十帧用“任意变形工具”设计出一个子弹输小的状态,并利用传统补间动画制作出子弹打出后逐渐变小的动画;在第十一帧插入空白关键帧,不放任何元素。新建一个图层用来放置as代码,在元件的第一帧中加入as3.0代码:stop(),在此图层的第十一帧中插入帧,级代码会延伸到第十一帧。 ~”目标”元件制作:新建元件,在弹出的文本框中将“名称”命名为“在

目标”,类型选为“影片剪辑”,将“为actionscript导出”勾选上,点击确定进入编辑元件的界面,利用“椭圆工具”和“部分选取工具”以及“任意变形工具”设计出一个打鸭子时的目标定位的形状。 ~”按钮”元件制作:新建元件,在弹出的文本框中将“名称”命名为“开

始游戏或重新开始”,类型选为按钮,点击确定进入编辑元件的界面,利用“矩形工具”在“弹起”的这一帧中画出按钮的形状,并用“颜料桶工具”填充颜色,并选用渐变色;在“按下”的这一帧中同样画出按钮的形状,并用“颜料桶工具”填充颜色,并选用渐变色,此时的渐变色要有略微的差别,使之出现按下后有视觉上的差别。 (2)场景上的制作:场景上分为三帧。

第一帧:选择“文件”的“导入”的“导入到舞台”,然后选择一张图

片放到场景的第一帧中,然后用“任意变形工具”将图片调到合适的大小。然后在库中拖出一个“开始游戏”按钮。如下图:

第一帧的代码如下:

stop();

bt1.addEventListener(MouseEvent.CLICK, fl_MouseClickHandler);

function fl_MouseClickHandler(event:MouseEvent):void {

gotoAndStop(2);

}

多媒体(flash)技术课程设计(包含全部的源文件.fla和源代码文件)

第二帧:在库中将“在地上的鸭子”元件拖到舞台上的合适位置,效

果如下图:

第二帧的代码如下: import flash.text.TextField; import flash.display.MovieClip;

Mouse.hide();

var timer:TextField=new TextField(); addChild(timer);

var score:TextField=new TextField(); addChild(score); var _score=0; var _timer=30;

var timerEvent:Timer=new Timer(1000);

timerEvent.addEventListener("timer",timerHandle); timerEvent.start();

function timerHandle(e:TimerEvent):void {

_timer--;

timer.text="倒计时:"+_timer; timer.textColor=0x000000; timer.x=480; timer.y=10;

timer.selectable=false; if(_timer==0) { gotoAndStop(3); }

score.text="打死"+_score+"只鸭子";

多媒体(flash)技术课程设计(包含全部的源文件.fla和源代码文件)

score.textColor=0x000000; score.x=10; score.y=10;

score.selectable=false; }

var bird1=new bird(); var dirX;

addChild(bird1); function firstweizhi() {

bird1.x=Math.random()*450+50; bird1.y=370;

dirX=Math.random()*5-Math.random()*6; }

var birdtimer:Timer=new Timer(50);

birdtimer.addEventListener("timer",birdtimerHandle); birdtimer.start();

function birdtimerHandle(e:TimerEvent):void {

if (bird1.y<0 || bird1.x<0 ||bird1.x>550) { firstweizhi(); } else { bird1.y -= 5+Math.random()*2; bird1.x += dirX; } }

var tan1=new tan(); addChild(tan1);

var dlyz1=new dlyz(); addChild(dlyz1);

var target=new Target(); addChild(target);

target.addEventListener(MouseEvent.CLICK, fl_MouseClickHandler_2);

function fl_MouseClickHandler_2(event:MouseEvent):void {

tan1.x=mouseX; tan1.y=mouseY; tan1.play();

tan1.addEventListener(Event.ENTER_FRAME, fl_EnterFrameHandler_1);

多媒体(flash)技术课程设计(包含全部的源文件.fla和源代码文件)

}

function fl_EnterFrameHandler_1(e:Event):void {

if(tan1.currentFrame==10) { if(tan1.hitTestObject(bird1)) { firstweizhi(); dlyz1.x=tan1.x; dlyz1.y=tan1.y; dlyz1.play(); _score++; } } }

stage.addEventListener(Event.ENTER_FRAME, fl_EnterFrameHandler_2);

function fl_EnterFrameHandler_2(event:Event):void {

target.x=mouseX; target.y=mouseY; }

第三帧:选择“文件”的“导入”的“导入到舞台”,然后选择一张图片放到景的第一帧中,然后用“任意变形工具”将图片调到合适的大小。然后在库中拖出一个“重新开始”按钮。如下图:

多媒体(flash)技术课程设计(包含全部的源文件.fla和源代码文件)

第三帧的代码如下:

Mouse.show();

stage.removeEventListener(Event.ENTER_FRAME, fl_EnterFrameHandler_2);

target.removeEventListener(MouseEvent.CLICK, fl_MouseClickHandler_2); tan1.removeEventListener(Event.ENTER_FRAME, fl_EnterFrameHandler_1); timerEvent.removeEventListener("timer",timerHandle); birdtimer.removeEventListener("timer",birdtimerHandle); removeChild(target); removeChild(tan1); removeChild(timer); removeChild(score); removeChild(dlyz1); removeChild(bird1);

bt2.addEventListener(MouseEvent.CLICK, fl_MouseClickHandler_3); function fl_MouseClickHandler_3(event:MouseEvent):void {

gotoAndStop(2);

}

四.课程设计小结

通过这次课程设计我想从两个方面具体阐述:

在设计方面:我们不仅要把书本上设计方面的知识学会轮回贯通,而且设计的思想也比较重要。在设计的过程虽然遇到了很多困难,但是通过仔细阅读课本的知识并查阅相关资料学会解决这些困难。这些不仅要有耐心,还要有恒心。但是在设计的效果上还是有一些不足,因为我们对审美的观念和排版还不是很强,所以我们还得花一些时间,花一些经历去弥补这些不足。相信只要我们有恒心,我们一定会做的更好!

在编程方面:这次的编程我投入了很多时间,也耗费了很多精力,然而我也学到了很多在课本上学不到的知识,学到的知识要善于运用到实践中,这次的课程设计就很好的培养了我们的实践能力和动手能力,相信通过不断的实践,不断地努力后,我们的编程能力会越来越强!

本文来源:https://www.bwwdw.com/article/9pvi.html

Top