下面是实现:
package {
import flash.display.Sprite;
import flash.events.Event;
import flash.display.StageScaleMode;
import flash.display.Stage;
public class TestBall extends Sprite {
private var ball:Ball;
private var spring:Number=0.1;
private var vx:Number=0;
private var vy:Number=0;
//这个是摩擦力啦!可以调节一下值看看变化
private var friction:Number=0.95;
//这个是重力,和我们现实生活中差不多
private var gravity:Number=5;
public function TestBall() {
this.stage.scaleMode=StageScaleMode.NO_SCALE;
//实例化一个小球(在库里的哦)
ball=new Ball();
this.addChild(ball);
this.addEventListener(Event.ENTER_FRAME,onEnterFrame);
}
private function onEnterFrame(event:Event):void {
//下面是核心算法,好好研究哦
var dx:Number=mouseX-ball.x;
var dy:Number=mouseY-ball.y;
var ax:Number=dx*spring;
var ay: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);
}
}
}
分享到:
相关推荐
在本文中,我们将深入探讨如何使用ActionScript 3.0(AS3.0)在Adobe Flash CC中创建一个动态的小球弹跳动画。ActionScript是Flash平台的核心编程语言,它为开发者提供了创建交互式内容、游戏和动画的强大工具。AS...
小球的运动可能涉及到基本的物理模拟,如重力、弹性碰撞等。这可以通过计算速度、加速度和角度来实现。 9. **帧率控制**: 游戏的帧率可能通过` ENTER_FRAME `事件来控制,确保游戏以稳定的速率更新。 10. **...
在本文中,我们将深入探讨如何使用ActionScript 3.0(AS3.0)来创建一个简单的"Flash小球跳动"的互动效果。ActionScript是Adobe Flash Professional中用于编程交互性和动态内容的主要语言,而AS3.0是其最新的版本,...
在这个实例中,开发者会用到AS3.0来编写小球的运动逻辑,包括位置、速度和重力的计算。 2. **Stage3D**:在Flash Player 11及以后的版本中,引入了Stage3D API,这是一个低级别的图形渲染接口,允许开发者创建高...
小球的运动轨迹通常基于物理规则,例如重力和弹性碰撞,这些可以通过模拟速度、加速度和角度来实现。 3. **物理模拟**:在AS3中,可以创建自定义的物理引擎,或者使用现有的库如Box2D AS3版本,来处理物体的碰撞...