FLEX和Actionscript开发FLASH游戏9-2(1)


FLEX和Actionscript开发FLASH游戏9-2(1)
2010年12月03日
  使用FLEX和Actionscript开发FLASH 游戏-定义一个级别 
  LevelDefinitions.as package {     import flash.geom.*;     import flash.utils.Dictionary;     public class LevelDefinitions     {         protected static var instance:LevelDefinitions=null;         protected var levelDefinitions:Dictionary=new Dictionary();         static public function get Instance():LevelDefinitions         {             if(instance==null)                 instance=new LevelDefinitions();             return instance;         }         public function addLevelDefinition(levelID:int,element:LevelDefini tionElement):void         {             if(levelDefinitions[levelID]==null)                 levelDefinitions[levelID]==new Array();             (levelDefinitions[levelID] as Array).push(element);             levelDefinitions[levelID].sort(LevelDefinitionElem ent.sort);         }         public function getNextLevelDefinitionElement(levelID:int,lastTime :Number):Array         {             var returnArray:Array=new Array();             var nextTime:Number=-1;             if(levelDefinitions[levelID]!=NULL)             {                 for each(var levelDefElement:LevelDefinitionElement in levelDefinitions[levelID])                 {                     if(levelDefElement.time>lastTime&&nextTime==-1)                     {                         returnArray.push(levelDefElement);                         nextTime=levelDefElement.time;                     }                     else if (levelDefElement.time==nextTime)                     {                         returnArray.push(levelDefElement);                     }                     else if(levelDefElement.time>nextTime&&nexTime!=-1)                         break;                 }             }             return returnArray.length==0?null:retrunArray;       }         public function getNextLevelID(levelID:int):int         {             if(levelDefinition[levelID+1]==null)return 0;             return levelID+1;         }         public function startup():void         {             GameObjectManager.Instance.addCollidingPair(Collis ionIdentifiers.PLAYER,CollisionIdentifiers.ENEMY);             GameObjectManager.Instance.addCollidingPair(Collis ionIdentifiers.ENEMY,CollisionIdentifiers.PLAYERWEA PON);             GameObjectManager.Instance.addCollidingPair(Collis ionIdentifiers.PLAYER,CollisionIdentifiers.ENEMYWEA PON);             LevelDefinitions.Instance.addLevelDefinition(1,new LevelDefinitionElement(1,                 function():void                 {(Enemy.pool.ItemFromPool as Enemy).startupBasicEnemy(                     ResourceManager.SmallBluePlaneGraphics,                     new Point(100,-ResourceManager.SmallBluePlaneGraphics. bitmap.height),                     55);}));           

猜你喜欢

转载自kle31kle.iteye.com/blog/1571868
今日推荐