ActionScript勉強中(1)

 こんなのEclipseにAXDTを入れるのに苦労したのですが、補完機能がないようだったので、FlashDevelopをインストールしたら、使いやすかった。やっぱ補完機能万歳ですね。

 ActionScriptの練習で初作品となったのが、次のコードです。

package{
	import flash.display.Sprite;
	import flash.geom.Point;
	import flash.utils.setInterval;
	import caurina.transitions.Tweener;

	public class Main extends Sprite {
		// マウスの位置保存
		private var prevPos:Point;

		public function Main():void {
			prevPos = new Point();

			// 100msごとにcircleメソッドを呼び出し
			setInterval(circle, 100);
		}

		private function circle():void {
			// 円を加える
			var s:Sprite = new Sprite();
			s.graphics.beginFill(0xFFFFFF,0);
			s.graphics.lineStyle(1, 0x3333FF)
			s.graphics.drawCircle(0, 0, 10);
			s.graphics.endFill();
			s.x = mouseX;
			s.y = mouseY;
			s.alpha = 1;
			s.scaleX = s.scaleY = 0;
			addChild(s);
			// マウスの位置の変化を計算
			var curPos:Point = new Point(mouseX, mouseY);
			var d:Number = Point.distance(curPos, prevPos);
			prevPos = curPos;
			// アニメーション
			if(d>10){
				Tweener.addTween(s, {
					time: 1,
					//マウスが大きく動くと円は大きく
					scaleX: d / 20,
					scaleY: d / 20,
					alpha: 0,
					onComplete: function():void{
						removeChild(s);
					}
				});
			}
		}
	}
}