当前位置: 首页 > 图文教程 > Flash动画 > ActionScript > Flash as3.0教程:弹性小球

ActionScript
FLASH 3D相册之利用BitmapData类制作
Flash 脚本游戏开发教程 第一课
Flash 脚本游戏开发教程第二课
Flash 脚本游戏开发教程第三课
Flash 脚本游戏开发教程第四课
Flash 脚本游戏开发教程第五课
Flash 脚本游戏开发教程第六课
Flash 脚本游戏开发教程第七课
Flash 脚本游戏开发教程第八课
Flash AS实现的蝌蚪摆尾动画的教程
从基础开始深入学Flash AS3教程(4)(译文)
从基础开始深入学Flash AS3教程(5)(译文)
从基础开始深入Flash AS3教程(2)(译文)
从基础开始深入学Flash AS3教程(3)(译文)
Flash AS3对单个图片进行角色动作化处理
从基础开始深入Flash AS3教程(1)(译文)
Flash教程:if条件语句的用法
Flash AS教程:_visible属性的详细讲解
Flash AS教程:图片环绕旋转效
Flash教程:trace()的使用

ActionScript 中的 Flash as3.0教程:弹性小球


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-16   浏览: 46 ::
收藏到网摘: n/a

搞AS游戏开发的朋友也许都听过Keith Peters大师,为我们缔造了那么多的经典算法,偶虽然不是游戏方向,但是还是特别喜欢!近些天拜读了《Making Things Move》的一部分,大师的经典杰作。数学与物理的伟大艺术体现,一直逃不脱我的眼球!

来玩儿一个,做一个健身的小弹力球,在地球上有重力哦^^先看看:




下面是实现:
package{
importflash.display.Sprite;
importflash.events.Event;
importflash.display.StageScaleMode;
importflash.display.Stage;

publicclassTestBallextendsSprite{
privatevarball:Ball;
privatevarspring:Number=0.1;
privatevarvx:Number=0;
privatevarvy:Number=0;
//这个是摩擦力啦!可以调节一下值看看变化
privatevarfriction:Number=0.95;
//这个是重力,和我们现实生活中差不多
privatevargravity:Number=5;
publicfunctionTestBall(){
this.stage.scaleMode=StageScaleMode.NO_SCALE;
//实例化一个小球(在库里的哦)
ball=newBall();
this.addChild(ball);
this.addEventListener(Event.ENTER_FRAME,onEnterFrame);
}
privatefunctiononEnterFrame(event:Event):void{
//下面是核心算法,好好研究哦
vardx:Number=mouseX-ball.x;
vardy:Number=mouseY-ball.y;
varax:Number=dx*spring;
varay:Number=dy*spring;
vx =ax;
vy =ay;
vy =gravity;
vx*=friction;
vy*=friction;
ball.x =vx;
ball.y =vy;
//绘制线条
this.graphics.clear();
this.graphics.lineStyle(1);
this.graphics.moveTo(ball.x,ball.y);
this.graphics.lineTo(mouseX,mouseY);
}
}
}
-*-原文地址:http://fck.name/node/138,转载请注明出处,谢谢!-*-