可拖动缓动小球

太水,只能抄代码


球类的代码: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>


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值