FlashMX基础之综合实例.ppt_第1页
FlashMX基础之综合实例.ppt_第2页
FlashMX基础之综合实例.ppt_第3页
FlashMX基础之综合实例.ppt_第4页
FlashMX基础之综合实例.ppt_第5页
已阅读5页,还剩96页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、FlashMX基础之十,综合应用,星球大战开场文字,字幕效果制作 新建550*400的文件,以黑色为背景,将图层1改名为:caption; 用文字工具,输入一段文字,设置好字体、字号及颜色; 将文字选中后打散2次后,进行透视变换。,星球大战开场文字,选中文字,将其转换为图形类元件:caption; 打开变形面板,将文字实例放大4倍左右,使第一行文字与未变形前差不多的大小。 将文字实例移到舞台下方边缘;,星球大战开场文字,在第200帧插入关键帧,将文字实例缩小后拖动到舞台中上方; 在第1帧创建运动渐变,并打开属性面板,将简易设为100。,星球大战开场文字,背景制作 新建图层:stars,并将其放

2、在图层caption的下面; 选中stars的第1帧,输入下面动作命令: iMax = 400; /星星总数。 sClipName = “starbg”; /背景影片剪辑名字 iStarSizeMax = 2; /星星大小(最大值) iStarSizeMin = 1; /星星大小(最小值) iStarAlphaMax = 100; /星星透明度(最大值) iStarAlphaMin = 80; /星星透明度(最小值) this.createEmptyMovieClip(sClipName, 0); /创建一个空白的背景影片剪辑。,星球大战开场文字,for (i=1; i=iMax; i+) i

3、StarX = Stage.width*Math.random(); /星星的X轴坐标 iStarY = Stage.height*Math.random(); /星星的Y轴坐标 iStarSize = (iStarSizeMax-iStarSizeMin) *Math.random()+iStarSizeMin; /星星的大小 iStarAlpha = (iStarAlphaMax-iStarAlphaMin) *Math.random()+iStarAlphaMin; /星星的透明度 iStarColor = 0 xffffff; /星星的颜色(白),星球大战开场文字,with (this

4、sClipName) lineStyle(iStarSize, iStarColor, iStarAlpha); /设定画星星画笔的大小,颜色,透明度 moveTo(iStarX-1, iStarY); /将画笔移动到要绘制星星的位置 lineTo(iStarX, iStarY); /绘制一条从点(iStarX-1,iStarY)到点(iStarX,iStarY)之间的,长度为一个像素的直线 ,星球大战开场文字,在最上方新建图层:shade,在中上方画一个矩形,由上而下填充成从透明到黑色的线性渐变。,星球大战开场文字,程序说明: createEmptyMovieClip语句的语法: MyMov

5、ieClip.createEmptyMovieClip(instanceName,depth); 功能:创建一个名为instanceName空白影片剪辑。,星球大战开场文字,With语句的语法: With(object) Statement(s); 功能:可以在两个花括号之间直接定义对象的属性,而不必在每个对象前加上对象的引用,这样,可以将某一对象的所有属性设定或调用集中在一起。 例如:要设置影片剪辑mc的_x属性,可在按:mc._x=100; 的方式进行,也可以按如下方式进行: With(mc) _x=100; ,星球大战开场文字,绘图方法:lineStyle、moveTo、lineTo l

6、ineStyle语法: MymovieClip.lineStyle(thckness,rgb,alpha) 参数Thckness、 rgb、alpha表示线的粗度、16进制的颜色及透明度,如果不含参数,则不画任何线;,星球大战开场文字,moveTo语法: MymovieClip. moveTo(x,y) 将画笔移到指定的(x,y)位置; lineTo语法: MymovieClip. lineTo(x,y) 从当前位置与指定的(x,y)位置之间画一条直线;使用该命令时,一定要使用lineStyle方法设置好线的属性。,闪 电 效 果,新建文件,插入MC元件 :闪光段; 选择矩形工具,创建一个矩形

7、,并将边线删除; 选择油漆桶工具,在Color Mixer面板中选择Linear渐变,将中间的颜色块设为白色,两边的颜色块设为深蓝色,并将Alpha的值设为0%,然后对矩形进行渐变处理,效果如图所示。,闪 电 效 果,按照第(3)步的操作,再制作两个半圆,并分别将其放置在矩形的两端,并将中心点拖放到上面的半圆圆心,效果如图所示。,闪 电 效 果,返回到场景中,将“闪光段”拖到场景中,在属性面板中将实例命名为basic,第1个关键帧后加入一个关键帧,整个动画只有两个关键帧。,闪 电 效 果,选择第1帧,然后在Action面板中加入如下代码: heightstart = 10; /定义闪光段高度的

8、最小值 heightrange = 50; /定义闪光段高度的范围 anglestart =80; /定义闪光段转角的最小值 anglerange = 160; /定义闪光段转角的范围 setProperty (“basic”, _visible, false); /设置闪光段 basic在场景中不可见,闪 电 效 果,选择第2帧,然后在Action面板中加入如下代码: i = 1; currentx = 300; /设置第一个闪光段的位置(X) currenty = 0; /设置第一个闪光段的位置(Y) do i = i+1; heightoffset = random(heightrang

9、e)+heightstart; /设置产生随机长度 angleoffset = random(anglerange)+anglestart; /设置产生随机旋转角度 newobj =“basic” add i; /设置产生一个字符串,用于下一条语句中。,闪 电 效 果,duplicateMovieClip (“basic”, newobj, i); /设置复制新的闪光段,用newobj中的字符串为其命名,设置它的深度为i setProperty (newobj, _x, currentx); /设置刚复制的闪光段的位置(X) setProperty (newobj, _y, currenty)

10、; /设置刚复制的闪光段的位置(Y) setProperty (newobj, _height, heightoffset); /设置刚复制的闪光段的长度 setProperty (newobj, _rotation, angleoffset); /设置刚复制的闪光段的旋转角度,闪 电 效 果,setProperty (newobj, _xscale, 100-5*i); /设置刚复制的闪光段的粗细 currentx = currentx -(Math.sin(angleoffset*3.14/180) *heightoffset*.7; /设置计算下一个闪光段的位置(X) currenty

11、= currenty+ (Math.cos(angleoffset*3.14/180) *heightoffset*.7; /设置计算下一个闪光段的位置(X) while (i20); /设置循环结束条件,数值越大,闪电的段数越多,当然太多会超出屏幕,可以改小长度。,闪 电 效 果,选择ControlTest Movie命令,则出现如图所示的预载动画效果。,暴 雨 效 果,下面将制作“暴雨”的效果,其制作方法主要采用长短不同的直线,向着同一方向运动来表现。 制作“暴雨”效果主要要制作3个动画层: 雨点层:用比较短而粗的直线,可用一些流线型水点,速度在810帧; 线层:用粗细适中而较长的直线,线

12、条可密些,速度在1015帧; 片层:表示雨的距离较远,可采用细而密的直线组成片状,速度在1520帧左右。,暴 雨 效 果,制作步骤: 建立一个新文件,创建新层:银幕。然后在该层上创建一个宽屏幕,如图所示。,暴 雨 效 果,新建Movie Clip类元件:雨点,选择笔刷工具,画一个流线型的水点,并将颜色设置为淡灰色或中灰色线,效果如图所示。,暴 雨 效 果,新建Movie Clip类元件:雨点运动,将“雨点”符号拖入到“雨点运动”符号的场景中; 选择第1帧,将“雨点”放置在场景的右上角。在第10帧插入关键帧,将“雨点”拖动到场景的左下角,并创建“雨点”为补间动画。 打开动作面板,添加如下代码,使

13、用雨点的运动能够循环运行:gotoAndPlay(1);,暴 雨 效 果,新建Movie Clip类元件:线。选择直线工具画一条倾斜的线,将颜色设为淡灰色,粗细为1。,暴 雨 效 果,新建Movie Clip类元件:线运动,将“线”符号拖入到“线运动”符号的场景中; 选择第1帧,将“线”放置在场景的右上角,在第15帧的位置上插入关键帧,将“线”放置在场景的左下角,并创建补间动画。,暴 雨 效 果,在第15帧,设置帧动作为:gotoAndPlay(1);使用“线运动”动画能够循环运行。 新建Movie Clip类元件:片。选择直线工具画一组细线,组成片状,效果如图所示。,暴 雨 效 果,新建Mo

14、vie Clip类元件:片运动。将“片”符号拖入到“片运动”符号的场景中; 选择第20帧,将“片”符号拖动到场景的右上角。 在第20帧的位置上插入关键帧,将“片”符号拖动到场景中的左下角,并创建补间动画。,暴 雨 效 果,选中第20帧,设置帧动作为:gotoAndPlay(1);使用“片运动”动画能够循环运行。 回到场景中,创建3个层,分别命名为“雨点层”,“线层”,“片层”,并在将所有层的第15帧处插入关键帧。 “宽银幕”层的第15帧选中第20帧,设置帧动作为: gotoAndPlay(1);,暴 雨 效 果,选择“雨点层”,将“雨点运动”拖入场景。并安排好位置,效果如图所示。 选择“线层”

15、,将“线的运动”拖入场景,并排好位置,使其间隔密一些,并在场景中也放一些,效果如图所示。,暴 雨 效 果,选择“片层”,将“片的运动”拖入场景,排好位置,并在场景中也需要放置一些,效果如图所示。,暴 雨 效 果,导入合适的声音文件, 创建一个声音图层并命名为“声音”。选择声音层的第1帧,在属性面板中的Sound下拉列表框内选择添加的声音文件的名称。在第15帧处插入关键帧,使动画和声音同步。 创建一新层,命名为“背景”,在该层中导入一幅背景图片,然后在第15帧上插入关键帧 选择“雨点层”中的所有符号,在属性面板中的Color下拉列表中选择Alpha选项,将透明度设置为80%,暴 雨 效 果,按照

16、同样的方法将“线层”和“片层”中的所有符号分别设为90%和70%,使效果更加出色。 按Ctrl+Enter组合键,最终效果如图所示。,新闻联播片头,本实例模仿“新闻联播”的片头制作了一个动画,首先我们利用蒙板制作了一个旋转的世界地图作为背景,然后分别为“新闻联播”4个字设置动画,创建天外飞字效果,使片头动画更具活力。,新闻联播片头,建立一个新文件。在属性面板中将场景颜色设置为淡蓝色(RGB:0、204、205); 选择矩形工具按钮,并设置Corner为10,在场景中绘制一个圆角矩形,设置矩形的高度和宽度为239,矩形变成了正方形;,新闻联播片头,对正方形进行由蓝色到黑色的辐射渐变填充,并将轮廓

17、删除,效果如图所示。 按下F8键将正方形转换为图形符号,命名为beijng。,新闻联播片头,导入一幅地图图片,将其转换为矢量图,再对其进行复制,将两个地图水平排列在一起,如图所示; 全选地图,将其颜色更改为50%的灰色,再按下F8键将地图转换为图形符号,命名为ditu。,新闻联播片头,新建一个电影类符号,命名为xuanzhuan,从库中拖动beijing符号到新建符号中,在第40帧按下F5键创建一个普通帧; 新建图层2,将ditu符号拖动到新建图层中,如图所示调整地图的位置,使其左端与正方形有一段重叠。,新闻联播片头,在图层2的第40帧创建关键帧,如图所示调整地图的位置,使其右端与正方形有一段

18、重叠; 注意,一定要使在该帧中重叠的部分与第1帧中相同,否则在后面生成动画后会有跳帧现象。然后,在图层2的第1帧上添加运动变形动画。,新闻联播片头,新建一个图层3,从Library面板中拖动beijing符号到新建层中,然后与场景中心对齐; 在图层3上单击鼠标右键,在弹出的菜单中选择Maske命令将该层转换为蒙板层,同时,图层2转换为被蒙板层。,新闻联播片头,新建一个图层4,从Library面板中拖动ditu符号到新建层中,选择“修改变形水平翻转”命令将ditu符号水平翻转; 选择图层4中的ditu符号,在Properties面板中设置该符号的Alpha值为30%;,新闻联播片头,在第40帧创

19、建关键帧,如图所示在第40帧中调整ditu符号的位置,调整后在第1帧添加运动变形动画。,新闻联播片头,新建一个图层5,从Library面板中拖动beijing符号到新建层中,使其与场景中心对齐,然后在图层5上单击鼠标右键,在弹出的快捷菜单中选择Maske命令将该层转换为蒙板层,同时,图层4转换为被蒙板层。,新闻联播片头,返回到场景中,从Library面板中拖动xuanzhuan符号到场景中,使其与场景中心对齐,然后对其进行放大4倍,效果如图所示; 在属性面板的Color下拉列表中选择Alpha选项,将该符号设置为完全透明。,新闻联播片头,在图层1中的第60帧创建关键帧,单击该帧中的xuanzh

20、uan符号,在Properties面板的Color下拉列表中选择None选项,使该符号恢复正常显示,然后调整其大小,如图所示。,新闻联播片头,单击图层1中的第1帧,在Properties面板中为该帧添加运动变形动画,然后在Rotate列表中选择CW选项,使xuanzhuan符号从第1帧到第60帧顺时针旋转一周。在第150帧按F5键。,新闻联播片头,新建一个图层2,在第1帧输入文字“新闻联播”,将其设置为桔黄色(RGB:255、102、0),然后将文字与场景中心对齐,效果如图所示。 复制文字,并将副本文字打散,然后对文字副本进行直线渐变填充,设置不同亮度的黄色到白色的渐变。填充后将文字副本与原文

21、字叠放在一起,组成立体字效。,新闻联播片头,依次框选每个文字,按下F8键将它们转换为4个图形符号,分别用各自的字命名; 选中和1帧上所有文字,组合后转换成图形类元件“新闻联播”; 在第60帧按F6键,插入关键帧,将第1帧的文字放大4倍,并将其设置为完全透明,并在第1帧设置为运动渐变。在第61帧按F7键。,新闻联播片头,新建图层3,在第60帧插入关键帧,从库中将图符“新”拖入,与图层2中的“新”字重合。在第80帧按F6键,将第60帧的“新”字放大4倍,并创建运动渐变。 新建4,在第70帧插入关键帧,从库中将图符“闻”拖入,与图层2中的“闻”字重合。在第90帧按F6键,将第70帧的“闻”字放大4倍

22、,并创建运动渐变。,新闻联播片头,新建图层5、图层6,用同样方法处理 “联”、 “播”两个图符,每个图层中创建关键帧如图所示。,新闻联播片头,对每个图层中的文字符号做相同的操作,完成片头动画的制作,如图所示。,图片环绕旋转,新建FLASH文件,把文档的背景色改成黑色。 CTRL+F8,新建元件text,在元件的帧上放13个关键帧,第一帧留空,在其他每个关键帧中输入一个字母(不能是黑色),并把各个字母放到元件的舞台的正中。 在第1帧,设置代码:stop(); 再新建元件earth,在元件的第一帧画一个黑色小圆。 退回主场景,把元件text拖到舞台中, 在属性面板中把实例名称命名为 v0。 把元件

23、earth拖到舞台中,在属性面板中把实例名称命名为 earth。,图片环绕旋转,在场景1新建图层,在新图层第1帧输入以下代码: for(i=1;i13;i+) duplicateMovieClip(v0,v+i,i); _rootv+i.factor=-360/12*i; _rootv+i.gotoAndStop(i+1); ,图片环绕旋转,选中元件 text,在动作面板输入以下代码: onClipEvent(load) _root.earth.swapDepths(100); Speed=3; Radius=180; ,图片环绕旋转,onClipEvent(enterFrame) _y=_r

24、oot.earth._y; z=_root.earth._x-_root._xmouse; speed=z/40; Factor+=speed; xtransform=Math.sin(Math.PI/180*factor); Ytransform=Math.sin(Math.PI/180*factor); Ytransformp=Math.sin(Math.PI/180*(factor+90); this._xscale=ytransformp*120+1; this._x=_root.earth._x+xtransform*radius; this._alpha=10+(ytransfor

25、mp+1)*50; this._yscale=120+(ytransformp-1)*2; stack=Math.round(ytransform+1)*100); this.swapDepths(stack); ,凸透镜成像,凸透镜成像演示过程是通过拖动界面上燃烧的蜡烛改变物距,演示物体的凸透镜成像效果,帮助学生理解透镜成像的特点及规律。课件运行界面如图所示。,凸透镜成像,凸透镜成像的规律是,当物体放在透镜的1倍焦距以外,所成的物像是在物体对侧的倒立的实像;物体放在透镜的1倍焦距以内,所成的物像是在物体同侧正立的虚像。,凸透镜成像,物距、像距与焦点的关系是: 根据这一公式我们可以推导出像距与

26、物距及焦点的位置。 同理,求出像高与物高的关系公式是:,凸透镜成像,课件的制作过程均是按照凸透镜成像规律进行的。 准备素材: 新建一个文件,将动画的画面尺寸设置为640px480px,背景色为蓝色。 插入一个名为“蜡烛”的电影剪辑元件,做一个58帧的蜡烛燃烧的逐帧动画.,凸透镜成像,插入一个名为“蜡烛-按钮”的按钮元件,将库窗口中的“蜡烛”电影剪辑元件拖入元件编辑窗口,设置其宽为20、高为100、X为-10、Y为-100。 插入一个名为“蜡烛-动画”的电影剪辑元件,将库窗口中的“蜡烛-按钮”按钮元件拖入元件编辑窗口,设置其宽为20、高为100、X为-10、Y为-100。,凸透镜成像,制作场景:

27、 返回场景,绘制一个椭圆,并设置其宽为25、高为270、水平、垂直居中。边框设置为无、填充色为上、下深绿色,中间白色的渐变色。,凸透镜成像,添加图层2,绘制一条直线表示主光轴,在直线上画一些间距相等的线段表示1倍焦点、2倍焦点等。在透镜两侧的1倍焦距的位置分别输入文字F1、F2。,凸透镜成像,在场景的正上方,输入标题文字“凸透镜成像”。根据需要设置字体、字号、文字颜色,参照运行效果图,将其放在场景编辑区的适当位置上。,凸透镜成像,添加图层3,打开库窗口,拖2个“蜡烛-动画”电影剪辑元件到图层3,将右侧表示透镜所成图像的蜡烛旋转180,并如图所示将其放在2倍焦距的位置上。,凸透镜成像,Actio

28、n指令设置: 选择任意层的第1帧,赋予帧动作如下: stop(); 选择编辑区左侧的蜡烛电影剪辑实例,在属性面板上赋予实例名称为m1。 选择编辑区右侧的蜡烛(此时烛焰向下)电影剪辑实例,在属性面板上赋予实例名称为m2。,凸透镜成像,双击任意一个“蜡烛-动画”元件实例,进入“蜡烛动画”元件编辑窗口。在蜡烛图形上单击鼠标右键,在打开的快捷菜单中选择动作命令,打开动作面板,输入下列动作语句。,凸透镜成像,on (press) startDrag(/m1, false, 50, 240, 320, 240); m1_x = getProperty(/m1, _x); rot = 180; if (m1

29、_x220) setProperty(/m2, _rotation, 0); u = 320-getProperty(/m1, _x); f = 320-220; v = f*u/(u-f); b = v/u; setProperty(/m2, _x, 320+v); setProperty(/m2, _xscale, b*getProperty(/m1, _xscale); setProperty(/m2, _yscale, b*getProperty(/m1, _yscale); ,凸透镜成像,if (m1_x220 and m1_x320) u = 320-getProperty(/m1

30、, _x); v = f*u/(f-u); b = v/u; setProperty(/m2, _x, 320-v); setProperty(/m2, _xscale, b*getProperty(/m1, _xscale); setProperty(/m2, _yscale, b*getProperty(/m1, _yscale); setProperty(/m2, _alpha, getProperty(/m1, _alpha)*0.4); setProperty(/m2, _rotation, rot); ,飘雪, 中括号的意义 用法1:用于定义及初始化数组,如: myArray =

31、myArray = new Array() myArray = red, orange, yellow 用法2:用于获取数组中的项,如: myArray0 = red 用法3:用于获取对象或影片片段的成员,如: account = myObjectaccount account = myObject.account _rootmc + 1_x = 30 _root.mc1._x = 30,飘雪,新建文件,插入一个背景图片; 单击第1帧,创建动作脚本如下: fallSnow(this,150,600,375); functionfallSnow(path,num,size) for(vari=0

32、;inum;i+) path.createEmptyMovieClip(xue+i,i); varmc=pathxue+i; mc._x=random(size0); mc._y=random(size1); mc.ro=1,-1random(2); mc.xtime=random(20); mc.startTime=0; mc.id=Math.pow(i,1/2); createSnow(mc,mc.id/2.5,0 xffffff,20*mc.id); ,飘雪,varloop=function() updateAfterEvent(); for(vari=0;inum;i+) varmc=

33、pathxue+i; mc._rotation+=mc.ro*5; mc._x+=mc.id*mc.ro/10; mc._y+=mc.id/2; mc.startTime+; scanTar(mc); scanEdge(mc,size); ; varinterval=setInterval(loop,10); ,飘雪,functioncreateSnow(mc,radius,c,alpha) with(mc) moveTo(0,-radius); beginFill(c,alpha); linestyle(0,0 x000000,0); for(vari=1;i=6;i+) vara1=-Ma

34、th.PI/6+i*Math.PI/3; vara2=i*Math.PI/3; lineTo(radius/5)*Math.sin(a1),-(radius/5)*Math.cos(a1); lineTo(radius*Math.sin(a2),-radius*Math.cos(a2); endFill(); ,飘雪,functionscanTar(mc) if(mc.startTime=mc.xtime) mc.startTime=0; mc.xtime=random(20); mc.ro=1,-1random(2); ,飘雪,functionscanEdge(mc,size) if(mc.

35、_xsize0) mc._x=0; elseif(mc._xsize1) mc._y=0; ,凸透镜成像,on (release) stopDrag(); m1_x = getProperty(/m1, _x); if (m1_x220) setProperty(/m2, _rotation, 0); setProperty(/m2, _alpha, getProperty(/m1, _alpha); u = 320-getProperty(/m1, _x); f = 320-220; v = f*u/(u-f); b = v/u; setProperty(/m2, _x, 320+v); s

36、etProperty(/m2, _xscale, b*getProperty(/m1, _xscale); setProperty(/m2, _yscale, b*getProperty(/m1, _yscale); ,凸透镜成像,if (m1_x275 and m1_x320) u = 330-getProperty(/m1, _x); v = f*u/(f-u); b = v/u; setProperty(/m2, _x, 330-v); setProperty(/m2, _xscale, b*getProperty(/m1, _xscale); setProperty(/m2, _ysc

37、ale, b*getProperty(/m1, _yscale); setProperty(/m2, _alpha, getProperty(/m1, _alpha)*0.4); setProperty(/m2, _rotation, rot); ,摘星星,这是一款键盘控制游戏,利用键盘上的上、下、左、右光标键来控制“七星瓢虫”的移动,必须将每一关的星星全部摘掉才算过关. 如果“七星瓢虫”与圆形陨石相碰撞则能量值将减少,当能量值为零时游戏将重新开始。,摘星星,随着关数的增加游戏的难度将越来越大,如图所示。,摘星星,定义键盘的上光标键控制“七星瓢虫”的移动,左光标键用于控制“七星瓢虫”的向左旋转

38、,右光标键用于控制“七星瓢虫”的向右旋转。 制作陨石与玩家的“七星瓢虫”的碰撞检测,如果碰撞将损失能量;制作星星与玩家的“七星瓢虫”的碰撞检测,如果碰撞将补充能量,随即星星也消失。 定义陨石和星星的随机出现。,摘星星,准备素材: 新建一个Flash文件,设置场景大小为466px233px,背景颜色为浅蓝色,帧频为30fps。 新建3个电影剪辑素材,分别命名为“星星”、“陨石”、“瓢虫”。,摘星星,在“星星”电影剪辑素材内绘制一个如图1所示的图形; 在“陨石”电影剪辑素材内绘制一个如图2所示的图形;在“瓢虫”电影剪辑素材内绘制一个如图3所示的图形。,摘星星,制作“再来一次”的按钮。新建一个按钮元

39、件,命名为“再来一次”。按钮可以简单用一个矩形表示,在按钮上输入“再来一次”的文本。在按钮后面的“点击”帧插入帧,结果如图所示。,摘星星,制作场景: 点击时间轴下面的标签,回到场景中。单击添加层按钮,共建立8个图层,从上到下分别命名为“动作”、“文字”、“背景边线”、“遮罩层”、“瓢虫”、“陨石”、“星星”、“背景”,最后显示时间轴结果如图所示。,摘星星,单击“背景”图层第1帧,在场景内绘制若干个大小不同的白色小圆点,圆的大小不超过33,使其遍布整个场景作为背景,然后将所有的小圆点选中,按Ctrl+G快捷键,将其组合起来。 将库窗口中的“星星”电影剪辑素材拖放到“星星”图层,打开属性面板,为该

40、电影剪辑添加实例名称为“star”; 将“陨石”电影剪辑素材拖放到“陨石”图层,打开属性面板,为该电影剪辑添加实例名称为“stone”;,摘星星,将“瓢虫”电影剪辑素材拖放到“瓢虫”图层,打开属性面板,为该电影剪辑素材添加实例名称为“fly”。 单击“背景边框”图层,使用直线工具,绘制一个边框,盖住前面的运行图。 单击“遮罩层”图层,使用矩形工具,绘制一个黑色矩形,使矩形的位置正好覆盖背景边框内部的区域。,摘星星,选中“遮罩层”图层,执行“修改图层”命令,弹出 “图层属性”对话框,选择“遮罩层”单选按钮,图层设置效果如图所示。,摘星星,选中“瓢虫”图层,执行“修改”“图层”命令,弹出图层属性对

41、话框,选择“被遮罩”单选按钮,如图所示。,摘星星,重复前面的步骤,将“陨石”、“星星”、“背景”3个图层的图层属性也设置为“被遮罩”。 单击“文字”图层,在场景内的右下角添加一个文本框,输入汉字“能量”。设置字体为方正水拄简体,字号为12,文字颜色为黑色。在旁边添加一个变量名为“energy”的动态文本框,表示能量的多少。,摘星星,再添加2个文本框,分别输入汉字“第”、“关”,设置字体,字号为12,文字颜色为黑色。两文字中间留一空格,在两文字中间添加一个变量名为“lev”的动态文本框,表示“第几关”。,摘星星,打开属性面板,具体设置如图所示。 调整好各个文本框的位置。,摘星星,Action指令

42、设置: 单击“动作”图层第1帧,打开动作面板,输入代码。 / 初始化变量 stonenum = 10; starnum = 5; lev = 1; energy = 100; findingstar = 0; / 定义自动生成石头函数,function createstone(n) while (nstarnum) duplicateMovieClip(_root.stone, stone+n, n); _rootstone+n._x = int(Math.random()*400); _rootstone+n._y = int(Math.random()*200); _rootstone+n

43、._alpha = 50; mxy = int(Math.random()*100+50); _rootstone+n._xscale = mxy;,摘星星,_rootstone+n._yscale = mxy; n-; function deletestone(p) while (pstarnum) trace(p); removeMovieClip(_rootstone+p); p-; ,/ 定义自动生成星星函数 function createstar(m) while (m=1) duplicateMovieClip(_root.star, star+m, m); _rootstar+m

44、._x = int(Math.random()*400); _rootstar+m._y = int(Math.random()*200); mxy = int(Math.random()*100+60); _rootstar+m._xscale = mxy;,摘星星,_rootstar+m._yscale = mxy; m-; createstone(stonenum+starnum); createstar(starnum); _root.onEnterFrame = function() var x; / 游戏结束,if (energy=0) gotoAndStop(2); / 游戏过关

45、 if (findingstar = starnum) findingstar = 0; lev+; stonenum+; createstone(stonenum+starnum); createstar(starnum); ,摘星星,/ 检测碰撞 x = stonenum+starnum; while (xstarnum) if (_root.fly.hitTest(_rootstone+x) energy-; x-; x = starnum;,while (x=1) if (_root.fly.hitTest(_rootstar+x) removeMovieClip(_rootstar+x); energy = energy+20; findingstar+; x-; ; stop()

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论