Follow

by majoraze forked from flash on 2010-11-20 (diff: 14)
♥0 | Line 45 | Modified 2010-11-21 13:32:46 | MIT License
play

ActionScript3 source code

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

// forked from majoraze's flash on 2010-11-20
package {
    import flash.display.Sprite;
    import flash.events.Event;
    
    public class Follow extends Sprite {
        private var arrow:Arrow;
        private var speed:Number = 5;
        public function Follow() {
            init();
        }
        
        private function init():void {
            arrow = new Arrow();
            addChild(arrow);
            addEventListener(Event.ENTER_FRAME, onEnterFrame);
        }
        
        private function onEnterFrame(e:Event):void {
            var dx:Number = mouseX - arrow.x;
            var dy:Number = mouseY - arrow.y;
            var angle:Number = Math.atan2(dy,dx);
            arrow.rotation = angle * 180/ Math.PI;
            var vx:Number = Math.cos(angle) * speed;
            var vy:Number = Math.sin(angle) * speed;
            arrow.x += vx;
            arrow.y += vy;
            
        }


    }
}

import flash.display.Sprite;
class Arrow extends Sprite {
    public function Arrow() {
        init();
    }
    
    public function init():void {
        graphics.lineStyle(1,0,1);
        graphics.beginFill(0xff0000);
        graphics.moveTo(-50,-25);
        graphics.lineTo(0,-25);
        graphics.lineTo(0,-50);
        graphics.lineTo(50,0);
        graphics.lineTo(0,50);
        graphics.lineTo(0,25);
        graphics.lineTo(-50,25);
        graphics.lineTo(-50,-25);
        graphics.endFill();
    }


}