flash on 2010-12-16
♥0 |
Line 52 |
Modified 2010-12-16 11:21:49 |
MIT License
archived:2017-03-20 13:09:42
ActionScript3 source code
/**
* Copyright Mushus ( http://wonderfl.net/user/Mushus )
* MIT License ( http://www.opensource.org/licenses/mit-license.php )
* Downloaded from: http://wonderfl.net/c/nGCi
*/
package {
import flash.display.Sprite;
public class FlashTest extends Sprite {
public function FlashTest() {
// write as3 code here..
var scr:BitmapScreen = new BitmapScreen(400,300);
addChild(scr);
scr.addChild(new Unit(10,10));
}
}
}
import flash.geom.Rectangle;
import flash.display.BitmapData;
import flash.display.Bitmap;
//BitmapScreenに表示するもの
class VisibleObject {
private var _x:int;
private var _y:int;
public function VisibleObject(x:int, y:int) {
_x = x;
_y = y;
}
public function draw(bd:BitmapData):void {
}
}
//Btimapで画面を作る
class BitmapScreen extends Bitmap {
private var _width:uint;//幅
private var _height:uint;//高さ
private var visibleObjects:Array = [];//表示するオブジェクト
public function BitmapScreen(width:uint, height:uint) {
//大きさ設定
this._width = width;
this._height = height;
//透明なし黒でビットマップを初期化
this.bitmapData = new BitmapData(width, height, false, 0);
}
public function addChild(vo:VisibleObject):void {
this.visibleObjects.push(vo);
}
public function draw():void {
var vo:Array = this.visibleObjects;
var i:int;
var length:uint = vo.length;
for(i = 0; i < length; i++) {
vo[i].draw();
}
}
}
class Unit extends VisibleObject {
public function Unit(x:int, y:int) {
super(x, y);
}
public override function draw(bd:BitmapData):void {
bd.fillRect(new Rectangle(10,10,20,20),0xffffffff);
}
}