Topic: AS 3.0代码实现甲虫跟随鼠标

敌人跟随我的AS代码

很高兴我昨天为一个游戏写了一些AS。(虽然不是我自已的而不能展示它,我只是被邀请写了其中的一部分),但是我很乐意与你一起共享其中的一些代码,比如我今天与你共享的一些源代码。

这个flash Actionspript源代码创一个跟随你的鼠标的敌人,特别要注意的是它不只是跟随鼠标的路径,而它的脸部总是随着鼠标旋转。这很酷吧。

首先我们要做一些诸如创建我们的敌人的准备工作,你总会做这些事,无论你是否乐意。当你完成时,右击它将它转换为MC,并为它取一个实例名称,我取的名称是:“"enemy_mc"。

现在我们准备写一些AS代码,但请记住这些AS代码是AS3.0的,为了使它工作你或许应做一些改变版本的事情,我没法为你做这些。:-)

你可以复制并粘贴这些代码到你的flash动面板或者你可以输入这些代码。

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;
}



唐山flash原创动画 。本教程由 唐山卡动互动影视动漫 转载  如有版权问题请联系删除。