Flash as入门(7):创建影片剪辑(3)

http://www.itjxue.com  2015-07-17 23:39  来源:未知  点击次数: 

四.删除加载的MC

removeMovieClip()方法:

对于用attachMovie()方法加载的,用duplicateMovieClip复制的和用createEmptyMovieClip()创建的MC,可以用removeMovieClip()方法移除。
来看看上面我们做那个练习,测试时,小球不停地反复地从左向右运动,现在我们让小球只运动一次,即当小球到达右边时,移除小球MC。
做法:在库中双击小球MC,进入小球元件编辑区,在第50帧上,点右键,点动作,在帧面板中输入:
this. removeMovieClip();
测试影片,当小球移动右边,第50帧时,小球被移除了。

五.几个常用的属性:

MC有很多属性,将在后续课程中陆续介绍,这里先介绍几个常用的属性:

_x,_y:MC在其父级容器中的坐标位置。
_alpha:透明度,其值为0-100;
_rotation:旋转的角度。
_height:高度
_width:宽度
_visible:MC是否可见,些值为true或1,则MC可见,如果为false或非1则不可见。
_xmouse:鼠标位置的x坐标
_ymouse:鼠标位置的y坐标
_xscale:MC宽度的百分比例,可用于设置MC的大小。
_yscale:MC高度的百分比例,可用于设置MC的大小。

六.综合练习:夜色中的荧火虫

下面通过一个夜色中的荧火虫的制作,作为本节内容的综合练习。
首先新建一flash文档,新建一MC,取名为“荧光”。 用椭圆工具,禁止笔触,绿色填充,居中画一个小圆,2个像素大小就行。居中对齐。点击“修改”-“形状”-“柔化填充边缘“,距离10,步骤5,方向扩展。在第10帧插入关键帧,将圆向下离一段距离。创建补间动画。在库中右击荧光元件,设置标识符为:mymc.
回到主场景,打开帧动作面板输入:
i=0;
onEnterFrame = function() {

if(i<50){

this. attachMovie("mymc","mymc"+i,i);

mymc_mc = eval("mymc"+i);

mymc_mc._x=random(450)+50;

mymc_mc._y=50+random(300);


mymc_mc._rotation = random(360);


i++;

}else {

i=0;

}
}
OK,测试影片。
上面代码通过onEnterFrame事件,使每一过帧从库中加载一次荧光元件,并用一个i变量计数,使荧光数量不超过50。this. attachMovie("mymc","mymc"+i,i);这一句加载语句中的深度用了变量i,而i将会是从0到49,然后回到0,周而复始,这样第二轮的0-49将的深度就与第一轮的相同,上面我们说到了,这时新加载的就会覆盖原来的,这就实现了荧光的更新,同时也保证了荧光的总数量为50个。前面我们说深度的这一特性将会很有用,在这里就用上了。荧光的位置和旋转角度都采用random()来随机产生,这样就实现了,荧光随机出现的舞台上,运动方向也是随机的。
大家可以扩展一下,将加载的荧光元件的_x属性设为:_xmouse+random(50),将_y属性设为:_ymouse+random(50),测试看一看,一个鼠标跟随效果就出来了。
上面练习是用attachMovie()从库中加载元件的方式实现的,用duplicateMovieClip()复制的方法也是可以实现的,方法略有不同:
将库中的灾光元件拖到舞台上,任一位置,打开属性面板,将实例名称设为:mymc_mc.帧动作上的代码为:
mymc_mc._visible = false; //首先将舞台上的荧光元件隐藏。
i=0;
onEnterFrame = function() {

if(i<50){
duplicateMovieClip (“mymc_mc”,"mymc"+i,i);

mymc_mc = eval("mymc"+i);

mymc_mc._x=random(450)+50;

mymc_mc._y=50+random(300);


mymc_mc._rotation = random(360);


i++;

}else {

i=0;

}
}

作业:

1.夜色下的荧火虫的制作

2.用本节所讲内容制作一下雨或下雪效果。

(责任编辑:IT教学网)

更多

推荐Flash actionscript文章