/// <summary>
        /// 返回道具ID
        /// </summary>
        private int GetPropID(string propName, int type)
        {
            switch (type)
            {
            //英雄
            case 0:
                List <mw.HeroBaseConfig> hbc = TableManager.Load <mw.HeroBaseConfig>();
                for (int i = 0; i < hbc.Count; i++)
                {
                    if (propName.Equals(TextManager.GetText(hbc[i].name)))
                    {
                        return(hbc[i].id);
                    }
                }
                break;

            //物品
            case 1:
                List <mw.ItemConfig> ic = TableManager.Load <mw.ItemConfig>();
                for (int i = 0; i < ic.Count; i++)
                {
                    if (propName.Equals(TextManager.GetText(ic[i].name)))
                    {
                        return(ic[i].id);
                    }
                }
                break;
            }
            return(-1);
        }
        /// <summary>
        /// 载入
        /// </summary>
        public static void Load()
        {
            TextManager.textDictionary.Clear();

            List <mw.UIDescConfig>[] listSet =
            {
                TableManager.Load <mw.UIDescConfig>("protodatas/UIDescConfig.protodata.bytes"),
                TableManager.Load <mw.UIDescConfig>("protodatas/UIDescExConfig.protodata.bytes"),
            };

            foreach (var list in listSet)
            {
                if (list != null)
                {
                    foreach (var config in list)
                    {
                        try
                        {
                            TextManager.textDictionary.Add(config.id, config);
                            TextManager.idIncrease = Math.Max(TextManager.idIncrease, config.id + 1);
                            //Log.AddLog("不报错ID:" + config.id);
                        }
                        catch (Exception exception)
                        {
                            Log.AddLog(exception.ToString());
                            Log.AddLog("报错ID:" + config.id);
                        }
                    }
                }
            }
        }
        /// <summary>
        /// 开始
        /// </summary>
        public static void Start()
        {
            GiftTable.GiftListEx = TableManager.Load <mw.GiftConfig>();
            if (null == GiftTable.GiftListEx)
            {
                GiftTable.GiftListEx = new List <mw.GiftConfig>();
            }

            List <mw.GiftConfig> list = new List <mw.GiftConfig>();

            for (int i = 0; i < GiftTable.GiftListEx.Count; ++i)
            {
                if (GiftTable.GiftListEx[i].id >= 1000000)
                {
                    list.Add(GiftTable.GiftListEx[i]);
                }
            }

            TableManager.Save(list);

            GiftTable.GiftList = TableManager.Load <mw.GiftConfig>("protodatas/GiftConfig.protodata.bytes");
            if (null == GiftTable.GiftList)
            {
                GiftTable.GiftList = new List <mw.GiftConfig>();
            }

            if (GiftTable.GiftListEx != null)
            {
                for (int i = 0; i < GiftTable.GiftListEx.Count; i++)
                {
                    int j = 0;
                    for (; j < GiftTable.GiftList.Count; j++)
                    {
                        if (GiftTable.GiftListEx[i].id == GiftTable.GiftList[j].id)
                        {
                            break;
                        }
                    }
                    if (j == GiftTable.GiftList.Count)
                    {
                        GiftTable.GiftList.Add(GiftTable.GiftListEx[i]);
                    }
                }
            }

            foreach (var gift in GiftTable.GiftList)
            {
                gift.title_id = gift.title;
                gift.desc_id  = gift.desc;
            }

            GiftTable.DoStart();
        }
        public static void LoadTable()
        {
            InitSpareIds();
            tableActivity.Clear();
            tableAchieve.Clear();
            tableReward.Clear();
            List <mw.ActivityConfig> listActivityEx = TableManager.Load <mw.ActivityConfig>("protodatas/ActivityExConfig.protodata.bytes");

            if (listActivityEx != null)
            {
                foreach (var val in listActivityEx)
                {
                    if (val != null)
                    {
                        AddActivityNode(val);
                    }
                }
            }

            List <mw.AchieveConfig> listAchieve = TableManager.Load <mw.AchieveConfig>("protodatas/AchieveExConfig.protodata.bytes");

            if (listAchieve != null)
            {
                foreach (var val in listAchieve)
                {
                    if (val != null)
                    {
                        AddAchieveNode(val);
                    }
                }
            }

            List <mw.RewardConfig> listReward = TableManager.Load <mw.RewardConfig>("protodatas/RewardExConfig.protodata.bytes");

            if (listReward != null)
            {
                foreach (var val in listReward)
                {
                    if (val != null)
                    {
                        AddRewardNode(val);
                    }
                }
            }
        }
        /// <summary>
        /// 开始
        /// </summary>
        public static void Start()
        {
            List <mw.ActivityConfig> listActivity = TableManager.Load <mw.ActivityConfig>("protodatas/ActivityConfig.protodata.bytes");

            if (null != listActivity)
            {
                foreach (var config in listActivity)
                {
                    ActivityTable.Add(config.id, config);
                }
            }

            List <mw.ItemConfig> itemList = TableManager.Load <mw.ItemConfig>();

            if (itemList != null)
            {
                foreach (var item in itemList)
                {
                    if (item.type != mw.Enums.ItemType.ITEM_TYPE_PET_STONE)
                    {
                        if (!TableManager.ItemTable.ContainsKey(item.id))
                        {
                            TableManager.ItemTable.Add(item.id, item);
                        }
                    }
                    else
                    {
                        if (!TableManager.PetStoneTable.ContainsKey(item.id))
                        {
                            TableManager.PetStoneTable.Add(item.id, item);
                        }
                    }
                }
            }

            List <mw.HeroBaseConfig> heroList = TableManager.Load <mw.HeroBaseConfig>();

            if (heroList != null)
            {
                foreach (var card in heroList)
                {
                    TableManager.HeroTable.Add(card.id, card);
                }
            }

            List <mw.PetConfig> petList = TableManager.Load <mw.PetConfig>();

            if (petList != null)
            {
                foreach (var pet in petList)
                {
                    TableManager.PetTable.Add(pet.idx, pet);
                }
            }

            List <mw.GMTDescConfig> gmtDescList = TableManager.Load <mw.GMTDescConfig>();

            if (gmtDescList != null)
            {
                foreach (var gmtDesc in gmtDescList)
                {
                    TableManager.GMTDescTable.Add(gmtDesc.id, gmtDesc);
                }
            }

            List <mw.RmbShopConfig> rmbShopList = TableManager.Load <mw.RmbShopConfig>();

            if (null != rmbShopList)
            {
                for (int i = 0; i < rmbShopList.Count; i++)
                {
                    string index = string.Format("{0}-{1}", rmbShopList[i].channel, rmbShopList[i].goods_RegisterId);

                    TableManager.RmbShopTable.Add(index, rmbShopList[i]);
                }
            }

            List <mw.MountConfig> mountList = TableManager.Load <mw.MountConfig>();

            if (null != mountList)
            {
                for (int i = 0; i < mountList.Count; ++i)
                {
                    if (!TableManager.MountTable.ContainsKey(mountList[i].id))
                    {
                        TableManager.MountTable.Add(mountList[i].id, mountList[i]);
                    }
                }
            }

            List <mw.StoneConfig> stoneList = TableManager.Load <mw.StoneConfig>();

            if (null != stoneList)
            {
                for (int i = 0; i < stoneList.Count; ++i)
                {
                    TableManager.StoneTable.Add(stoneList[i].id, stoneList[i]);
                }
            }
        }
        /// <summary>
        /// 页面载入响应
        /// </summary>
        protected override void OnGmPageLoad()
        {
            if (!this.IsPostBack)
            {
                int idx = 0;

                #region 读取事件名称
                causeNameList.Clear();
                idx = 10000;
                while (idx < 20000)
                {
                    if (TableManager.GMTDescTable.ContainsKey(idx))
                    {
                        causeNameList.Add(TableManager.GetGMTText(idx));
                    }
                    else
                    {
                        break;
                    }
                    idx++;
                }
                #endregion

                #region 读取奖励类型名称
                {
                    int[] keyArr = typeNameDic.Keys.ToArray();
                    for (int i = 0; i < keyArr.Length; ++i)
                    {
                        if (TableManager.GMTDescTable.ContainsKey(20000 + keyArr[i]))
                        {
                            typeNameDic[keyArr[i]] = TableManager.GetGMTText(20000 + keyArr[i]);
                        }
                    }
                }
                #endregion

                #region 读取经济类型名称
                {
                    int[] keyArr = economicName.Keys.ToArray();
                    for (int i = 0; i < keyArr.Length; ++i)
                    {
                        if (TableManager.GMTDescTable.ContainsKey(21000 + keyArr[i]))
                        {
                            economicName[keyArr[i]] = TableManager.GetGMTText(21000 + keyArr[i]);
                        }
                    }
                }

                //economicName.Clear();
                //idx = 21000;
                //while (idx < 22000)
                //{
                //    if (TableManager.GMTDescTable.ContainsKey(idx))
                //    {
                //        economicName.Add(idx - 21000, TableManager.GetGMTText(idx));
                //    }
                //    idx++;
                //}
                #endregion

                #region 读取buff名称
                buffNameList.Clear();
                idx = 22000;
                while (idx < 23000)
                {
                    if (TableManager.GMTDescTable.ContainsKey(idx))
                    {
                        buffNameList.Add(TableManager.GetGMTText(idx));
                    }
                    else
                    {
                        break;
                    }
                    idx++;
                }
                #endregion

                #region 物品名称
                if (itemNameDic == null)
                {
                    itemNameDic = new Dictionary <int, string>();
                    // 英雄
                    try
                    {
                        List <mw.HeroBaseConfig> hbc = TableManager.Load <mw.HeroBaseConfig>();
                        for (int i = 0; i < hbc.Count; i++)
                        {
                            itemNameDic.Add(hbc[i].id, TextManager.GetText(hbc[i].name));
                        }

                        //物品
                        List <mw.ItemConfig> ic = TableManager.Load <mw.ItemConfig>();
                        for (int i = 0; i < ic.Count; i++)
                        {
                            if (itemNameDic.ContainsKey(ic[i].id))
                            {
                                itemNameDic[ic[i].id] = TextManager.GetText(ic[i].name);
                            }
                            else
                            {
                                itemNameDic.Add(ic[i].id, TextManager.GetText(ic[i].name));
                            }
                        }
                    }
                    catch (Exception ec)
                    {
                    }
                }
                #endregion
            }
        }
        /// <summary>
        /// 载入
        /// </summary>
        public static void Load()
        {
            NoticeEditData.NoticeList = TableManager.Load <mw.SysNtfConfig>();

            NoticeEditData.DoLoad();
        }