flash on 2017-2-4
♥0 |
Line 71 |
Modified 2017-02-04 09:19:40 |
MIT License
archived:2017-03-20 16:20:55
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/YPGP
*/
package {
import flash.text.TextField;
import flash.events.MouseEvent;
import flash.events.Event;
import flash.display.Sprite;
public class FlashTest extends Sprite {
public function FlashTest() {
vecBlob = new Vector.<xBlob>(0,false);
var a:xBlob; var i:int;
for (i=0;i<128;i+=1)
{
a = new xBlob();
a.cx = Math.random()*2048-1024;
a.cy = Math.random()*2048-1024;
vecBlob.push(a);
}//nexti
deb = new TextField();
deb.mouseEnabled=false;
deb.width=320;
deb.height=240;
addChild(deb);
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 deb:TextField;
public var mbutton:int = 0;
public var mhold:int = 0;
public var camx:Number = 0;
public var camy:Number = 0;
public var gx:Number = 0;
public var gy:Number = 0;
public var wgx:Number = 0;
public var wgy:Number = 0;
public var vecBlob:Vector.<xBlob>;
public function onEnter(e:Event):void
{
graphics.clear();
graphics.lineStyle(2, 0);
if (mbutton == 1) { mhold+=1; }
else { mhold=0; }
var wmx:Number; var wmy:Number;
var mx:Number; var my:Number;
mx = stage.mouseX; my = stage.mouseY;
wmx = camx+mx;
wmy = camy+my;
//deb.text = ""+mx+"\n"+my;
if (mhold == 1) { wgx = camx; wgy = camy; gx=mx; gy=my; }
else if (mbutton == 1)
{
camx = (wgx ) + (gx-mx);
camy = (wgy ) + (gy-my);
}
graphics.drawRect(32-camx,32-camy,256,256);
graphics.drawCircle(wmx-camx,wmy-camy, 8);
var a:xBlob; var num:int; var i:int;
num=vecBlob.length;
for(i=0;i<num;i+=1)
{
a = vecBlob[i];
graphics.drawCircle(a.cx-camx, a.cy-camy, 16);
}//nexti
}//onenter
}//classend
}
internal class xBlob
{
public var cx:Number = 0;
public var cy:Number = 0;
}//xblob