flash on 2010-2-27

by ushisantoasobu
♥0 | Line 53 | Modified 2010-02-27 08:56:19 | MIT License
play

ActionScript3 source code

/**
 * Copyright ushisantoasobu ( http://wonderfl.net/user/ushisantoasobu )
 * MIT License ( http://www.opensource.org/licenses/mit-license.php )
 * Downloaded from: http://wonderfl.net/c/aqhL
 */

package{
	import flash.display.Sprite;
	
	public class BallAction extends Sprite{
		public function BallAction(){
			//var ball:Sprite = new BallSprite(0xFF9933);
			//ball.x=100;
			//ball.y=100;
			//addChild(ball);
			
			//var moveBall:Sprite=new MoveBallSprite(0xFF1122);
			//moveBall.x=20;
			//moveBall.y=20;
			//addChild(moveBall);
			
			//var dropBall:Sprite=new DropBallSprite(0xFF3434);
			//dropBall.x=0;
			//dropBall.y=0;
			//addChild(dropBall);
			
			var mouseBall:Sprite = new MouseTraceBallSprite(0x343434);
			mouseBall.x = 10;
			mouseBall.y = 10;
			addChild(mouseBall);
		}
	}
}

import flash.display.Sprite;
class BallSprite extends Sprite {
	public function BallSprite(color:uint) {
    		super();           
   		graphics.beginFill(color);
        graphics.drawCircle(0,0,20);
        graphics.endFill();
    }
}

import flash.events.*;
class MoveBallSprite extends BallSprite{
	public var velocityX:Number = 2;
	public var velocityY:Number = 3;
	public function MoveBallSprite(color:uint){
		super(color);
		addEventListener(Event.ENTER_FRAME, updataPosition);
	}
	private function updataPosition(e:Event):void{
		x += velocityX;
		y += velocityY;
	}
}

class DropBallSprite extends MoveBallSprite{
	public var gravity:Number = 0.6;
	public function DropBallSprite(color:uint){
		super(color);
		addEventListener(Event.ENTER_FRAME, upDateVelocity);
	}
	private function upDateVelocity(e:Event):void{
		velocityY += gravity;
	}
}

class MouseTraceBallSprite extends MoveBallSprite{
	public function MouseTraceBallSprite(color:uint){
		super(color);
		addEventListener(Event.ENTER_FRAME, updateVelocity);
	}
	private function updateVelocity(e:Event):void{
		velocityX = (root.mouseX-x)*0.1;
		velocityY = (root.mouseY-y)*0.1;
	}
}

Forked