flash on 2013-5-23

by hemingway
♥0 | Line 49 | Modified 2013-05-25 03:29:24 | MIT License
play

ActionScript3 source code

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

package
{
    import flash.display.*;
    import flash.events.*;
    import flash.geom.*;
    
    [SWF(frameRate=60, width=465, height=465)]
    public class Main extends Sprite
    {
        private var bmpCanvas :BitmapData;
        private var startPos :Point;
        private var posA :int;
        private var posB :int;
        private var posC :int;
        private var posD :int;

        public function Main()
        {
            init(); 
        }
        
        private function init() :void
        {
            startPos = new Point();
            bmpCanvas = new BitmapData(465, 465, false, 0xDCDCDC);
            var $bmp :Bitmap = new Bitmap(bmpCanvas);
            
            addChild($bmp);
            
            stage.addEventListener(MouseEvent.MOUSE_DOWN, onMouseDown);
            stage.addEventListener(Event.ENTER_FRAME, onFrame);
        }

        private function onMouseDown($e:MouseEvent) :void
        {
            startPos = new Point($e.stageX, $e.stageY);
            posA = (-1);
            posB = (+1);
            posC = (+1);
            posD = (-1);

            bmpCanvas.setPixel($e.stageX, $e.stageY, 0x00DC00);
        }
        
        private function onFrame($e:*) :void
        {
            bmpCanvas.setPixel(startPos.x + posA, startPos.y, 0x00DC00);
            bmpCanvas.setPixel(startPos.x + posB, startPos.y, 0x00DC00);
            bmpCanvas.setPixel(startPos.x, startPos.y + posC, 0x00DC00);
            bmpCanvas.setPixel(startPos.x, startPos.y + posD, 0x00DC00);
            
            (posA < -100) ? posA-=4 : posA-=2;
            (posB > 100) ? posB+=4 : posB+=2;
            (posC > 100) ? posC+=4 : posC+=2;
            (posD < -100) ? posD-=4 : posD-=2;
        }
    }
}