Flash 特效制作常用的源代码放送(3)
*两点间的直线移动
var s = 15;
_root.onMouseDown = function() {
var oldM_x = _root._xmouse;
var oldM_y = _root._ymouse;
ax = aa._x;
ay = aa._y;
dis = Math.sqrt((oldM_x-ax)*(oldM_x-ax)+(oldM_y-ay)*(oldM_y-ay));
xa = (oldM_x-ax)/dis;
ya = (oldM_y-ay)/dis;
amove();
};
function amove() {
onEnterFrame = function () {
aa._x += s*xa;
aa._y += s*ya;
if (Math.sqrt((aa._x-ax)*(aa._x-ax)+(aa._y-ay)*(aa._y-ay))>dis) {
delete onEnterFrame;
}
};
}
*计算两个对象之间/两点之间的距离(注册点)
function getDistanceOf(target1, target2, x2, y2) {
if (arguments.length == 4) {
dx = x2-target1;
dy = y2-target2;
} else if (arguments.length == 2) {
dx = target2._x-target1._x;
dy = target2._y-target1._y;
}
return Math.sqrt(dx*dx+dy*dy);
}
//Arguments 对象是一个数组,其中包含作为参数传递给任何函数的值。每次在动作脚本中调用函数时,都会为该函数自动创建 Arguments 对象。同时还会创建一个局部变量 arguments,使您可引用 arguments 对象。