给我留言 | 加入收藏 | 设为首页 | 会员中心 | 我要投稿 | RSS
| PHP | ASP | JAVA | .NET | FLASH | AJAX | MYSQL | PGSQL | MSSQL | DB2 | ORACLE | SYBASE | Html/Css | 服务器相关 | IOS |
您当前的位置:首页 > WEb开发 > FLASH

Flash教程:AS 3.0代码实现甲虫跟随鼠标

时间:2009-11-14 17:50:15  来源:互联网  作者:未知

很高兴我昨天为一个游戏写了一些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;
}

来顶一下
返回首页
返回首页
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表
推荐资讯
相关文章
栏目更新
栏目热门