在其属性面板上面设置参数如图6所示。
c7C中国设计秀
c7C中国设计秀
c7C中国设计秀
c7C中国设计秀
图6
c7C中国设计秀
c7C中国设计秀
7、用鼠标右键单击“object”Clip中时间轴的第七十五帧,选取插入一个关键帧,选取此帧场景中的“Tween 7”Clip,在其属性面板上面设置参数如图7所示。
c7C中国设计秀
c7C中国设计秀
c7C中国设计秀
c7C中国设计秀
图7
c7C中国设计秀
8、用鼠标右键单击“object”Clip中时间轴的第二帧、第十五帧、第三十帧、第四十五帧,分别在其属性面板上面设置参数如图8所示。
c7C中国设计秀
c7C中国设计秀
c7C中国设计秀
c7C中国设计秀
图8
c7C中国设计秀
c7C中国设计秀
9、用“Ctrl + F8”新建一个Movie Clip,命名为“tracer”,在此Clip的第一帧的Action面板上面增加如下语句:
c7C中国设计秀
removeMovieClip(this);
c7C中国设计秀
c7C中国设计秀
10、回到影片的主场景中,将第二步中所制作的“object”Clip拖到场景中,命名为“object0”。
c7C中国设计秀
11、在影片主场景的时间轴上面插入一个新的图层,命名为“control”,将第九步中所制作的“tracer”Clip拖到此层的场景中,命名为“follow”,并在此Clip的Action面板上面增加如下语句:
c7C中国设计秀
onClipEvent (load) {
c7C中国设计秀
ypos = 0; //注释1
c7C中国设计秀
xpos = 0;
c7C中国设计秀
xdiv = 0;
c7C中国设计秀
ydiv = 0;
c7C中国设计秀
elength = 0.8;
c7C中国设计秀
fluid = 0.04;
c7C中国设计秀
_x = _xmouse;
c7C中国设计秀
_y = _ymouse;
c7C中国设计秀
}
c7C中国设计秀
onClipEvent (enterFrame) { //注释2
c7C中国设计秀
ydiv = Number(ydiv*elength)+Number((_parent._ymouse-_y)*fluid); //注释3
c7C中国设计秀
_y = _y+ydiv;
c7C中国设计秀
xdiv = Number(xdiv*elength)+Number((_parent._xmouse-_x)*fluid);
c7C中国设计秀
_x = _x+xdiv;
c7C中国设计秀
}
c7C中国设计秀
c7C中国设计秀
注释1:初始化各个变量。
c7C中国设计秀
注释2:当Clip播放的时候,触发此函数。
c7C中国设计秀
注释3:根据各个Clip跟鼠标的距离来设置值。
c7C中国设计秀
c7C中国设计秀
12、在主场景中的第一帧的Action面板上面增加如下语句:
c7C中国设计秀
active = false;
c7C中国设计秀
var ypos = 100;
c7C中国设计秀
dist = new Array();
c7C中国设计秀
var totalobjects = 50;
c7C中国设计秀
function generateobjects() { //注释1
c7C中国设计秀
if (mystatus=true) {
c7C中国设计秀
startpos = 100;
c7C中国设计秀
for (i=0; i object0.duplicateMovieClip("object"+i, i); //注释2
c7C中国设计秀
j = i;
c7C中国设计秀
k = k+1;
c7C中国设计秀
if (j%10 == 0) {
c7C中国设计秀
ypos = ypos+25;
c7C中国设计秀
startpos = 100;
c7C中国设计秀
k = 0;
c7C中国设计秀
}
c7C中国设计秀
this["object"+i]._x = ((20*k)+startpos); //注释3
c7C中国设计秀
this["object"+i]._y = ypos;
c7C中国设计秀
}
c7C中国设计秀
mystatus = false;
c7C中国设计秀
}
c7C中国设计秀
object._visible = 0;
c7C中国设计秀
}
c7C中国设计秀
generateobjects(); //注释4
c7C中国设计秀
function attachline(number) { //注释5
c7C中国设计秀
totalcount = totalobjects;
c7C中国设计秀
for (l=0; l xdist = follow._x-this["object"+l]._x;
c7C中国设计秀
ydist = follow._y-this["object"+l]._y;
c7C中国设计秀
dist[l] = Math.sqrt(xdist*xdist+ydist*ydist);
c7C中国设计秀
this["object"+l].values = Math.round(dist[l]);
c7C中国设计秀
this["object"+l].gotoAndStop(Math.round(dist[l]));
c7C中国设计秀
this["object"+l].swapDepths(Math.round(dist[l])*100);
c7C中国设计秀
}
c7C中国设计秀
}
c7C中国设计秀
_root.onEnterFrame = function() { //注释6
c7C中国设计秀
attachline(14);
c7C中国设计秀
};
c7C中国设计秀
stop();
c7C中国设计秀
c7C中国设计秀
注释1:定义一个帧函数。
c7C中国设计秀
注释2:复制一个Clip。
c7C中国设计秀
注释3:设置所复制的Clip的摆放位置。
c7C中国设计秀
注释4:调用前面所定义的帧函数。
c7C中国设计秀
注释5:设置follow实例的各个值。
c7C中国设计秀
注释6:调用所定义的帧函数。
c7C中国设计秀
c7C中国设计秀
13、本实例到此就制作完成了,按“Ctrl + Enter”可以看到实例的效果。
c7C中国设计秀
c7C中国设计秀
五、小结
c7C中国设计秀
c7C中国设计秀
从上面的三个实例中可以看到,制作鼠标特效的要点只有两个:一是制作好特效的Clip,只有特效制作好了,