package classes
{
import flash.display.BitmapData;
import flash.display.Stage;
import flash.events.Event;
import flash.display.DisplayObject;
/**
* ...
*
@author fengsser
* 游戏入口
*/
public class Game
{
var _stage:Stage;
var cubeArr:Vector.<DisplayObject>;//存放cube对象,Vctor对象代替数组增加效率
var cubeNum:uint = 120;//方块总数
//var sourceBMD:BitmapData;
var cubeSize:int = 10;
var girdCollision:GridCollision;
public function Game(_stage:Stage) {
this._stage = _stage;
cubeArr = new Vector.<DisplayObject>();
init();
}
public function init():void {
//sourceBMD = new BitmapData(this.cubeSize,this.cubeSize, false, 0x0066ff);
makeCube();//创建方块
girdCollision = new GridCollision(this, 45);//网格碰撞类
this._stage.addEventListener(Event.ENTER_FRAME, render);//渲染
}
public function makeCube():void {
for (var i = 0; i < cubeNum; i++ ) {
var cube:Cube = new Cube(this);
cube.x = Math.round(Math.random()*(this._stage.stageWidth-cubeSize)+cubeSize/2);
cube.y = Math.round(Math.random()*(this._stage.stageHeight-cubeSize)+cubeSize/2)
cubeArr.push(cube);
this._stage.addChild(cube);
}
}
public function render(e:Event):void {
for (var i in cubeArr) {
var cube:Cube = cubeArr[i] as Cube;
cube.run();//让方块移动
girdCollision.checkGrid();//碰撞检测
}
}
}
}