flash on 2016-10-29
♥0 |
Line 56 |
Modified 2016-10-29 20:16:49 |
MIT License
archived:2017-03-20 16:22:08
ActionScript3 source code
/**
* Copyright mutantleg ( http://wonderfl.net/user/mutantleg )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/6JDX
*/
package {
import flash.events.MouseEvent;
import flash.events.Event;
import flash.display.Sprite;
public class FlashTest extends Sprite {
public function FlashTest() {
stage.addEventListener(MouseEvent.MOUSE_DOWN, onMdown);
stage.addEventListener(MouseEvent.MOUSE_UP, onMup);
stage.addEventListener(Event.ENTER_FRAME, onEnter);
}//ctor
public function onMdown(e:MouseEvent):void { mbutton = 1; }
public function onMup(e:MouseEvent):void { mbutton = 0; }
public var mbutton:int = 0;
public var cx:Number = 230;
public var cy:Number = 230;
public var ang:Number = 0;
public var gx:Number = 230;
public var gy:Number = 230;
public var vx:Number = 0;
public var vy:Number = 0;
public function getMag(ax:Number, ay:Number):Number
{ return Math.sqrt(ax*ax + ay*ay); }
public function onEnter(e:Event):void
{
graphics.clear();
graphics.lineStyle(2, 0);
graphics.drawCircle(cx,cy, 8);
graphics.moveTo(cx, cy);
graphics.lineTo(cx+Math.cos(ang)*8, cy+Math.sin(ang)*8);
var mx:Number; var my:Number;
mx = stage.mouseX;
my = stage.mouseY;
ang = Math.atan2(my-cy, mx-cx);
if (mbutton > 0)
{
cx+= Math.cos(ang)*3;
cy+= Math.sin(ang)*3;
}
var ms:Number; ms =32;
if (mbutton > 0) { ms = 128; }
var ax:Number; var ay:Number;
ax = cx+Math.cos(ang)*ms;
ay = cy+Math.sin(ang)*ms;
graphics.drawCircle(ax,ay, 4);
var d:Number;
d = getMag(ax-gx,ay-gy);
vx += (ax-gx)*0.03;
vy += (ay-gy)*0.03;
vx*=0.91; vy*=0.91;
// vx*=0.85; vy*=0.85;
gx+=vx; gy+=vy;
gx += (ax-gx)*0.15;
gy += (ay-gy)*0.15;
graphics.drawCircle(gx,gy, 8);
}//onenter
}//classend
}