forked from: flash on 2009-6-16
forked from flash on 2009-6-16 (diff: 4)
ActionScript3 source code
/**
* Copyright bossa5 ( http://wonderfl.net/user/bossa5 )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/sE4o
*/
// forked from set0's flash on 2009-6-16
package
{
import flash.display.*;
import flash.events.*;
import flash.filters.*;
import flash.geom.*;
[SWF(width=465, height=465, frameRate=60, backgroundColor=0xffffff)]
public class FlashTest3 extends Sprite
{
private var bar_list:Array = [];
private var buffer:BitmapData = new BitmapData(465, 465, false);
private var screen:Bitmap = new Bitmap(buffer);
public function FlashTest3()
{
addChild(screen);
stage.addEventListener(MouseEvent.MOUSE_MOVE, makeBar);
addEventListener(Event.ENTER_FRAME, onEnterFrame);
}
public function makeBar(e:Event):void
{
bar_list.push(new Bar(stage.mouseX, stage.mouseY));
}
private function onEnterFrame(e:Event):void
{
bar_list.push(new Bar(stage.mouseX, stage.mouseY));
var max:int = bar_list.length;
buffer.colorTransform(buffer.rect, new ColorTransform(1, 1, 1, 1, 255, 255, 255, 0));
for (var i:int = 0; i < max; i++) {
buffer.copyPixels(bar_list[i].bmp, bar_list[i].bmp.rect, new Point(bar_list[i].x, bar_list[i].y));
if (bar_list[i].moveBar() === false) {
bar_list.splice(i, 1);
i--;
max--;
}
}
}
}
}
import flash.display.*;
import flash.geom.*;
class Bar
{
public var bmp:BitmapData;
public var x:Number;
public var y:Number;
public function Bar(x:Number, y:Number)
{
this.bmp = new BitmapData(2, 2, false, 0x000000);
this.x = x;
this.y = y;
}
public function moveBar():Boolean
{
this.x += Math.random() * 10-5;
this.y -= Math.random() * 5;
if (this.x >= 465 || this.y >= 465) {
return false;
}
return true;
}
}
