flash on 2010-1-25

by hacker_xaotp5zq
♥0 | Line 64 | Modified 2010-01-25 01:36:15 | MIT License
play

ActionScript3 source code

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

package {
    import flash.display.Sprite;
    public class FlashTest extends Sprite {
        public function FlashTest() {
            // write as3 code here..
          var ball:BallSprite = new BallSprite(0xFF9933);
          ball.x = 50;
          ball.y = 50;
          addChild(ball);
          
          var moveBall:BallSprite = new MoveBallSprite(0x000066);
          moveBall.x = 100;
          moveBall.y = 50;
          addChild(moveBall);
          
          var dropBall:Sprite = new DropBallSprite(0x006600);
          dropBall.x = 151;
          dropBall.y = 50;
          addChild( dropBall );
          
          var mouseTraceBall:Sprite = new MouseTracerBallSprite(0xff0000);
          mouseTraceBall.x = 200;
          mouseTraceBall
        }
    }
}

import flash.display.*;
import flash.events.*;

class BallSprite extends Sprite{
	public function BallSprite(color:int){
		super();
		
		graphics.beginFill(color);
		graphics.drawCircle(0,0,10);
		graphics.endFill();
	}
}
class MoveBallSprite extends BallSprite{
	public var velocityX:Number = 8;
	public var velocityY:Number = 6;
	public function MoveBallSprite(color:int){
		super(color);
		addEventListener(Event.ENTER_FRAME,updatePosition);
	}
	private function updatePosition(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+= 0.6;
		
	}
}

class MouseTracerBallSprite extends MoveBallSprite{
    public function MouseTracerBallSprite ( 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;
    }
}