flash on 2012-10-17
♥0 |
Line 68 |
Modified 2012-10-17 22:37:45 |
MIT License
archived:2017-03-30 22:58:35
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/ldF2
*/
package {
import flash.geom.Rectangle;
import flash.events.MouseEvent;
import flash.events.Event;
import flash.display.Sprite;
public class FlashTest extends Sprite {
public function FlashTest() {
vecRect = new Array();
stage.addEventListener(MouseEvent.CLICK, mdown);
stage.addEventListener(Event.ENTER_FRAME, onEnter);
}//ctor
public var sx:Number = 0;
public var sy:Number = 0;
public var mode:int = 0;
public function mdown(e:MouseEvent):void
{
if (mode == 0)
{
sx = mouseX;
sy = mouseY;
sx = Math.floor(sx/8)*8;
sy =Math.floor(sy/8)*8;
mode = 1;
}
else
{
mode = 0;
var r:Rectangle;
var ax:Number;
var ay:Number;
var w:Number;
var h:Number;
w = Math.abs(mx-sx);
h = Math.abs(my-sy);
ax = mx < sx ? mx : sx;
ay = my < sy ? my : sy;
if (w == 0 || h == 0) { return; }
r = new Rectangle(ax,ay, w,h);
vecRect.push(r);
}
}//mdown
public var vecRect:Array;
public var mx:Number = 0;
public var my:Number = 0;
public function onEnter(e:Event):void
{
graphics.clear();
graphics.lineStyle(2,0);
mx = mouseX;
my = mouseY;
mx = Math.floor(mx /8) * 8;
my = Math.floor(my / 8) * 8;
if (mode == 1)
{
graphics.drawRect(sx, sy, mx-sx, my-sy);
}
var i:int;
var num:int;
var r:Rectangle;
num = vecRect.length;
for (i = 0; i < num; i++)
{
r = vecRect[i];
graphics.drawRect(r.x, r.y, r.width, r.height);
}//nexti
}//onenter
}//classend
}