`
hacker47
  • 浏览: 337305 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

AS3基础,鼠标跟随

 
阅读更多

我们经常在游戏里看到,人物跟随鼠标的点击旋转并移动位置,其实算法还是比较简单的。

 

package
{
	import flash.display.Sprite;
	import flash.events.Event;
	import flash.events.MouseEvent;
	
	public class Main extends Sprite
	{
		private var musX:Number;
		private var musY:Number;
		private var rect:Rect;
		
		public function Main()
		{
			rect=new Rect();
			addChild(rect);
			
			this.addEventListener(Event.ENTER_FRAME,onEnterFrame);
			this.stage.addEventListener(MouseEvent.CLICK,clickHandler);
		}
		
		private function onEnterFrame(e:Event):void{
			var dx:Number=mouseX-rect.x;
			var dy:Number=mouseY-rect.y;
			var radians:Number=Math.atan2(dy,dx);
			rect.rotation=radians*180/Math.PI+0;
		}
		
		private function clickHandler(e:MouseEvent):void{
			musX=e.stageX;
			musY=e.stageY;
			trace(musX);
			rect.x+=(musX-rect.x)/5;
			rect.y+=(musY-rect.y)/5;
		}
		
	}
}

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics