8.新建一个图层,然后把“引用”、“引用2”和辅助拖出来,注意辅助要拖两次,放置效果如下图:
然后分别给“引用”命名实例名为fly0_mc,“引用2”实例名为fly1_mc,辅助的实例名为:transp0、transp1。
9.新建一个图层改名为action,然后按F9打开动作面板,输入如下动作:
probability = 100;
scene_width = 500;
scene_height = 290;
speed = 0.03;
depth = 15;
MovieClip.prototype.smoothMove = function (speed, targetx, targety) {
this._x += speed*(targetx-this._x);
this._y += speed*(targety-this._y);
};
MovieClip.prototype.rotateTo = function (targetx, targety) {
var diffX = targetx-this._x;
var diffY = targety-this._y;
this._rotation = Math.atan2 (diffY, diffX)*180/Math.PI;
};
_root.transp0.onEnterFrame = function () {
if (random (probability) == 1) {
target0X = random (scene_width);
target0Y = random (scene_height);
}
this._visible = 0;
this.smoothMove (speed, target0X, target0Y);
};
_root.transp1.onEnterFrame = function () {
if (random (probability) == 1) {
target1X = random (scene_width);
target1Y = random (scene_height);
}
this._visible = 0;
this.smoothMove (speed, target1X, target1Y);
};
_root.fly0_mc.onEnterFrame = function () {
this.smoothMove (speed, transp0._x, _root.transp0._y);
this.rotateTo (_root.transp0._x, _root.transp0._y);
};
_root.fly1_mc.onEnterFrame = function () {
this.smoothMove (speed, transp1._x, _root.transp1._y);
this.rotateTo (_root.transp1._x, _root.transp1._y);
};
_root.shadow0_mc.onEnterFrame = function () {
this.smoothMove (speed, transp0._x, _root.transp0._y+depth);
this.rotateTo (_root.transp0._x, _root.transp0._y+depth);
};
_root.shadow1_mc.onEnterFrame = function () {
this.smoothMove (speed, transp1._x, _root.transp1._y+depth);
this.rotateTo (_root.transp1._x, _root.transp1._y+depth);
};
动画制作完成,按Ctrl+回车键可以测试动画了!Thank you!
- 第3页:Flash动画制作:飞舞的两只蝴蝶(3)
- 第4页:Flash动画制作:飞舞的两只蝴蝶(4)
- 相关阅读:
- ·Facebook视频完成从Flash转移到HTML5
//soft.zol.com.cn/558/5588278.html - ·精美H5动画轻松做 Mugeda讲师走进ZOL
//soft.zol.com.cn/555/5556237.html - ·Adobe宣布Flash更名 支持HTML5开发
//soft.zol.com.cn/555/5552783.html - ·《雷电》新作明年发售 全3D场景制作
//soft.zol.com.cn/555/5550567.html - ·HTML5技术教程之关联动画的使用
//soft.zol.com.cn/553/5536561.html