主题:  鼠标追踪

5D困丫

职务:普通成员
等级:4
金币:10.0
发贴:1206
#12001/8/14 9:48:55
帮我看看哪有什么问题,怎么效果没出来?
实物1mc名为move,只有一图形,实物2mc名为mov1,其中实物2mc只有一帧,为隐型按钮(即只有hit),把两 mc调入场景中,action如下:
隐型按钮:on (press) {
    _root.difx = this._x-_root.move._x;
    _root.move.targetx = this._x;
    _root.dify = this._y-_root.move._y;
    _root.move.targety = this._y;
    _root.done = false;
}
实物1mc:
onClipEvent (load) {
    friction = "0.18";
}
onClipEvent (enterFrame) {
    mouse_x = int(targetx-this_x);
    mouse_y = int(targety-this_y);
    if (mouse_x>0 && mouse_y>0) {
        quad = Number(4);
    }
    if (mouse_x<0 && mouse_y>0) {
        quad = Number(1);
    }
    if (mouse_x<0 && mouse_y<0) {
        quad = Number(2);
    }
    if (mouse_x>0 && mouse_y<0) {
        quad = Number(3);
    }
    abs_x = math.abs(mouse_x);
abs_y = math.abs(mouse_y);
tg=abs_y/abs_x;
_root.maths=math.atan(tg)*number(180)/math.PI;
if (quad==1) {
angle=number(90)-number(_root.maths);
}
if (quad==2) {
angle=number(90)+number(_root.maths);
}
if (quad==3) {
angle=number(270)-number(_root.maths);
}
if (quad==4) {
angle=number(270)+number(_root.maths);
}
if (not _root.done) {
setproperty (_this,_rotation,angle);
_root.done=true;
}
speedx=difx*friction;
speedy=dify*friction;
setproperty (this,_y,_root.move._y+speedy);
setproperty (this,_x,_root.move._x+speedx);
difx=int(targetx)-this._x;
dify=int(targety)-this._y;
}
实物2mc:
onClipEvent (load) {
    startDrag (this, true);
}




janlay

职务:管理员
等级:7
金币:28.0
发贴:7244
#22001/8/14 10:18:31
有些地方有小错误。最好把normal mode下的代码拷进来替换你刚写的部分,这样能够比较容易看清里面的层次。
我觉得代码结构不够紧凑,不清楚你所要实现的具体功能。
最好把源文件贴上来



5D困丫

职务:普通成员
等级:4
金币:10.0
发贴:1206
#32001/8/14 10:48:10
这是一个沿追踪鼠标的原程序,一本书上看到的,试了下,没成功,现在不负责的人越来越多,提醒大家买书时一定要注意!
不讨论了
自己重写吧!
关闭!