home *** CD-ROM | disk | FTP | other *** search
- package core
- {
- import core.events.CoreEvent;
- import core.objects.BonusBall;
- import core.objects.Meteor;
- import core.objects.MeteorDef;
- import core.objects.Rect;
- import core.objects.RectDef;
- import flash.display.Stage;
- import flash.events.KeyboardEvent;
-
- public class TimeManager
- {
-
-
- private var engine:CoreEngine;
-
- private var currentTime:int;
-
- private var stage:Stage;
-
- public function TimeManager(stage:Stage)
- {
- super();
- this.stage = stage;
- init();
- }
-
- private function init() : void
- {
- currentTime = 0;
- engine = CoreEngine.getInstance();
- engine.dispatcher.addEventListener(CoreEvent.DESTROY,destroyHandler);
- }
-
- private function createRect() : void
- {
- var width:Number = 20 + Math.random() * 50;
- var height:Number = 20 + Math.random() * 50;
- var rotation:Number = Math.round(Math.random() * 180);
- var dx:Number = 200;
- var x:Number = 290 - dx + Math.random() * dx * 2;
- var y:Number = 0;
- var rectDef:RectDef = new RectDef(x,y,0,width,height,rotation);
- var rect:Rect = new Rect(rectDef);
- }
-
- private function createMeteor() : void
- {
- var r:Number = 20;
- var dx:Number = 200;
- var x:Number = 290 - dx + Math.random() * dx * 2;
- var meteorDef:MeteorDef = new MeteorDef(x,-r,0,r,10,30);
- var meteor:Meteor = new Meteor(meteorDef);
- }
-
- private function keyDownHandler(e:KeyboardEvent) : void
- {
- switch(e.keyCode)
- {
- case 90:
- engine.level.createBonusBallDef(BonusBall.FREEZE,0);
- break;
- case 88:
- engine.level.createBonusBallDef(BonusBall.POWERUP,0);
- break;
- case 67:
- engine.level.createBonusBallDef(BonusBall.PUSH_FIELD,0);
- break;
- case 86:
- engine.level.createBonusBallDef(BonusBall.ATTACH,0);
- break;
- case 66:
- engine.level.createBonusBallDef(BonusBall.INVERSE,0);
- break;
- case 65:
- engine.level.createCircleDef(10);
- break;
- case 83:
- createMeteor();
- break;
- case 68:
- createRect();
- break;
- case 81:
- engine.level.createStarDef(0);
- }
- }
-
- private function destroyHandler(e:CoreEvent) : void
- {
- stage.removeEventListener(KeyboardEvent.KEY_DOWN,keyDownHandler);
- engine.dispatcher.removeEventListener(CoreEvent.DESTROY,destroyHandler);
- }
- }
- }
-