太水,只能抄代码
球类的代码:Ball
package {
import flash.display.MovieClip;
import flash.display.Sprite;
public class Ball extends Sprite {
public var radius:Number;
private var color:uint;
public var vx:Number = 0;
public var vy:Number = 0;
public function Ball(radius:Number = 40,color:uint=0xff0000) {
// constructor code
this.radius=radius;
this.color= color;
init();
}
public function init():void{
graphics.beginFill(color);
graphics.drawCircle(0,0,radius);
graphics.endFill();
}
}
}
文档类代码
package {
import flash.display.Sprite;
import flash.events.MouseEvent;
import flash.events.Event;
public class Easing2 extends Sprite{
private var ball:Ball;
private var easing:Number = 0.2;
private var targetX:Number = stage.stageWidth/2;
private var targetY:Number = stage.stageHeight/2;
public function Easing2() {
// constructor codei
init();
}
public function init():void
{
ball = new Ball();
addChild(ball);
ball.addEventListener(MouseEvent.MOUSE_DOWN,onMouseDown);
addEventListener(Event.ENTER_FRAME,onEnterFrame);
}
private function onMouseDown(event:MouseEvent):void
{
ball.startDrag();
removeEventListener(Event.ENTER_FRAME,onEnterFrame);
stage.addEventListener(MouseEvent.MOUSE_UP,onMouseUp);
}
private function onMouseUp(event:MouseEvent):void
{
ball.stopDrag();
addEventListener(Event.ENTER_FRAME,onEnterFrame);
stage.removeEventListener(MouseEvent.MOUSE_UP,onMouseUp);
}
private function onEnterFrame(event:Event):void
{
var vx:Number = (targetX - ball.x)*easing;
var vy:Number = (targetY - ball.y)*easing;
ball.x+=vx;
ball.y+=vy;
}
}
}<span style="font-family: Arial, Helvetica, sans-serif;"> </span>