flash as3.0怎么让屏幕上的移动物体跟着鼠标移动
5个回答
展开全部
代码如下:
AS源代码:
首先是一个使敌人有移动的事件监听,这是一个enterframe事件。
enemy_mc.addEventListener(Event.ENTER_FRAME, do_stuff);
//要调用的函数
function do_stuff(event:Event):void {
// 这儿计算出敌人中心点随着鼠标旋转的角度.
var myRadians:Number = Math.atan2(mouseY-enemy_mc.y, mouseX-enemy_mc.x);
var myDegrees:Number = Math.round((myRadians*180/Math.PI));
// 这是敌人移向鼠标的参数.
var yChange:Number = Math.round(mouseY-enemy_mc.y);
var xChange:Number = Math.round(mouseX-enemy_mc.x);
var yMove:Number = Math.round(yChange/20);
var xMove:Number = Math.round(xChange/20);
// 不使用上面的计算就没有什么可以人做的事,这样我就设置x和y及旋转.
enemy_mc.y += yMove;
enemy_mc.x += xMove;
enemy_mc.rotation = myDegrees+90;
}
AS源代码:
首先是一个使敌人有移动的事件监听,这是一个enterframe事件。
enemy_mc.addEventListener(Event.ENTER_FRAME, do_stuff);
//要调用的函数
function do_stuff(event:Event):void {
// 这儿计算出敌人中心点随着鼠标旋转的角度.
var myRadians:Number = Math.atan2(mouseY-enemy_mc.y, mouseX-enemy_mc.x);
var myDegrees:Number = Math.round((myRadians*180/Math.PI));
// 这是敌人移向鼠标的参数.
var yChange:Number = Math.round(mouseY-enemy_mc.y);
var xChange:Number = Math.round(mouseX-enemy_mc.x);
var yMove:Number = Math.round(yChange/20);
var xMove:Number = Math.round(xChange/20);
// 不使用上面的计算就没有什么可以人做的事,这样我就设置x和y及旋转.
enemy_mc.y += yMove;
enemy_mc.x += xMove;
enemy_mc.rotation = myDegrees+90;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
呃........
新建元件——影片剪辑——画你要移动的物体——指着物体右键——动作——
输入代码:
onClipEvent (enterFrame) { this._x+=(_root._xmouse-this._x)/5; this._y+=(_root._ymouse-this._y)/5;}
新建元件——影片剪辑——画你要移动的物体——指着物体右键——动作——
输入代码:
onClipEvent (enterFrame) { this._x+=(_root._xmouse-this._x)/5; this._y+=(_root._ymouse-this._y)/5;}
追问
如果是在触摸屏上,我希望能达到这种效果:就是一群鱼儿在自由的游动,然后我把五个手指(多点触控)都放在屏幕上,瞬间,鱼儿都会游到我的手指下面。
追答
我也是新手.......
不懂啊.................
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
貌似不能识别五个手指,一般是三个手指。。。
追问
那三个怎么实现呢?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询