home *** CD-ROM | disk | FTP | other *** search
/ 404 Jogos / CLJG.iso / Diversos / Beez.swf / scripts / game / model / GameAssets.as < prev    next >
Encoding:
Text File  |  2008-09-03  |  1.4 KB  |  57 lines

  1. package game.model
  2. {
  3.    import flash.display.Loader;
  4.    import flash.events.Event;
  5.    import flash.events.EventDispatcher;
  6.    import flash.system.ApplicationDomain;
  7.    
  8.    public class GameAssets extends EventDispatcher
  9.    {
  10.       
  11.       private static var instance:GameAssets;
  12.        
  13.       
  14.       private var Assets:Class;
  15.       
  16.       private var appDomain:ApplicationDomain;
  17.       
  18.       public function GameAssets()
  19.       {
  20.          Assets = GameAssets_Assets;
  21.          super();
  22.       }
  23.       
  24.       public static function getInstance() : GameAssets
  25.       {
  26.          if(!instance)
  27.          {
  28.             instance = new GameAssets();
  29.          }
  30.          return instance;
  31.       }
  32.       
  33.       public function init() : void
  34.       {
  35.          var loader:Loader = new Loader();
  36.          loader.contentLoaderInfo.addEventListener(Event.INIT,assetsInitHandler);
  37.          loader.loadBytes(new Assets());
  38.       }
  39.       
  40.       private function assetsInitHandler(e:Event) : void
  41.       {
  42.          appDomain = e.target.content.loaderInfo.applicationDomain;
  43.          dispatchEvent(new Event(Event.INIT));
  44.       }
  45.       
  46.       public function getAssetClass(name:String) : Class
  47.       {
  48.          if(!appDomain.hasDefinition(name))
  49.          {
  50.             trace("*Error*: There is no definition of class \'" + name + "\'");
  51.             return null;
  52.          }
  53.          return appDomain.getDefinition(name) as Class;
  54.       }
  55.    }
  56. }
  57.