text: //////////////////////////////////////////////////////////////////////////////////////
  //
  //  Copyright (c) 2014-present, Egret Technology.
  //  All rights reserved.
  //  Redistribution and use in source and binary forms, with or without
  //  modification, are permitted provided that the following conditions are met:
  //
  //     * Redistributions of source code must retain the above copyright
  //       notice, this list of conditions and the following disclaimer.
  //     * Redistributions in binary form must reproduce the above copyright
  //       notice, this list of conditions and the following disclaimer in the
  //       documentation and/or other materials provided with the distribution.
  //     * Neither the name of the Egret nor the
  //       names of its contributors may be used to endorse or promote products
  //       derived from this software without specific prior written permission.
  //
  //  THIS SOFTWARE IS PROVIDED BY EGRET AND CONTRIBUTORS "AS IS" AND ANY EXPRESS
  //  OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  //  OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
  //  IN NO EVENT SHALL EGRET AND CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
  //  INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  //  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;LOSS OF USE, DATA,
  //  OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
  //  LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
  //  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
  //  EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  //
  //////////////////////////////////////////////////////////////////////////////////////
  var Main = (function (_super) {
      __extends(Main, _super);
      function Main() {
          _super.call(this);
          this.addEventListener(egret.Event.ADDED_TO_STAGE, this.onAddToStage, this);
      }
      var d = __define,c=Main,p=c.prototype;
      p.onAddToStage = function (event) {
          //设置加载进度界面
          //Config to load process interface
          this.loadingView = new LoadingUI();
          this.stage.addChild(this.loadingView);
          //初始化Resource资源加载库
          //initiate Resource loading library
          RES.addEventListener(RES.ResourceEvent.CONFIG_COMPLETE, this.onConfigComplete, this);
          RES.loadConfig("resource/default.res.json", "resource/");
      };
      /**
       * 配置文件加载完成,开始预加载preload资源组。
       * configuration file loading is completed, start to pre-load the preload resource group
       */
      p.onConfigComplete = function (event) {
          RES.removeEventListener(RES.ResourceEvent.CONFIG_COMPLETE, this.onConfigComplete, this);
          RES.addEventListener(RES.ResourceEvent.GROUP_COMPLETE, this.onResourceLoadComplete, this);
          RES.addEventListener(RES.ResourceEvent.GROUP_LOAD_ERROR, this.onResourceLoadError, this);
          RES.addEventListener(RES.ResourceEvent.GROUP_PROGRESS, this.onResourceProgress, this);
          RES.addEventListener(RES.ResourceEvent.ITEM_LOAD_ERROR, this.onItemLoadError, this);
          RES.loadGroup("preload");
      };
      /**
       * preload资源组加载完成
       * Preload resource group is loaded
       */
      p.onResourceLoadComplete = function (event) {
          if (event.groupName == "preload") {
              this.stage.removeChild(this.loadingView);
              RES.removeEventListener(RES.ResourceEvent.GROUP_COMPLETE, this.onResourceLoadComplete, this);
              RES.removeEventListener(RES.ResourceEvent.GROUP_LOAD_ERROR, this.onResourceLoadError, this);
              RES.removeEventListener(RES.ResourceEvent.GROUP_PROGRESS, this.onResourceProgress, this);
              RES.removeEventListener(RES.ResourceEvent.ITEM_LOAD_ERROR, this.onItemLoadError, this);
              this.createGameScene();
          }
      };
      /**
       * 资源组加载出错
       *  The resource group loading failed
       */
      p.onItemLoadError = function (event) {
          console.warn("Url:" + event.resItem.url + " has failed to load");
      };
      /**
       * 资源组加载出错
       *  The resource group loading failed
       */
      p.onResourceLoadError = function (event) {
          //TODO
          console.warn("Group:" + event.groupName + " has failed to load");
          //忽略加载失败的项目
          //Ignore the loading failed projects
          this.onResourceLoadComplete(event);
      };
      /**
       * preload资源组加载进度
       * Loading process of preload resource group
       */
      p.onResourceProgress = function (event) {
          if (event.groupName == "preload") {
              this.loadingView.setProgress(event.itemsLoaded, event.itemsTotal);
          }
      };
      /**
       * 创建游戏场景
       * Create a game scene
       */
      p.createGameScene = function () {
          this.user = new User("Player01", 1);
          this.hero = new Hero("H001", "Heroine", Quality.ORAGE, 3, "Hero_png", HeroType.SABER);
          this.sword = new Weapon("W001", "Sword", Quality.ORAGE, WeaponType.HANDSWORD, "Weapon_jpg");
          this.helment = new Armor("A001", "Helment", Quality.PURPLE, ArmorType.LIGHTARMOR, "Helment_jpg");
          this.Defence = new Armor("A002", "Defence", Quality.GREEN, ArmorType.LIGHTARMOR, "Defence_jpg");
          this.Armour = new Armor("A003", "Armour", Quality.BLUE, ArmorType.LIGHTARMOR, "Armour_jpg");
          this.weaponJewel = new Jewel(Quality.ORAGE);
          this.armorJewel = new Jewel(Quality.WHITE);
          this.sword.addJewl(this.weaponJewel);
          this.helment.addJewl(this.armorJewel);
          this.Defence.addJewl(this.armorJewel);
          this.Armour.addJewl(this.armorJewel);
          this.hero.addWeapon(this.sword);
          this.hero.addHelment(this.helment);
          this.hero.addCorseler(this.Defence);
          this.hero.addShoes(this.Armour);
          this.user.addHeroInTeam(this.hero);
          this.user.addHeros(this.hero);
          this.userPanel = new UserPanel();
          this.addChild(this.userPanel);
          this.userPanel.showHeroInformation(this.hero);
          this.userPanel.x = (this.stage.width - this.userPanel.width) / 2;
          this.userPanel.y = (this.stage.height - this.userPanel.height) / 2;
          //this.equipmentInformationPanel = new EquipmentInformationPanel();
          this.userPanel.equipmentInformationPanel.showEquipmentInformation(this.sword);
          //this.addChild(this.userPanel.equipmentInformationPanel);
      };
      /**
       * 根据name关键字创建一个Bitmap对象。name属性请参考resources/resource.json配置文件的内容。
       * Create a Bitmap object according to name keyword.As for the property of name please refer to the configuration file of resources/resource.json.
       */
      p.createBitmapByName = function (name) {
          var result = new egret.Bitmap();
          var texture = RES.getRes(name);
          result.texture = texture;
          return result;
      };
      return Main;
  }(egret.DisplayObjectContainer));
  egret.registerClass(Main,'Main');
  //# sourceMappingURL=Main.js.map