Esempio n. 1
0
        void UpdateHeroItem(int index, RectTransform cell)
        {
            HeroItemData    objHero = heroDatas[index];
            UI_HeroListItem uiIt    = cell.gameObject.GetComponent <UI_HeroListItem>();

            if (uiIt == null)
            {
                uiIt = cell.gameObject.AddComponent <UI_HeroListItem>();
                heroList.Add(uiIt);
            }

            // 有一个空
            if (ObjectSelf.GetInstance().HeroContainerBag.GetHeroList().Count % 2 != 0 && index == ObjectSelf.GetInstance().HeroContainerBag.GetHeroList().Count)
            {
                uiIt.index = index;
                uiIt.m_id  = index;
                uiIt.Initialize(objHero, ItemType.Empty);
            }
            else
            {
                uiIt.index = index;
                uiIt.m_id  = index;
                uiIt.Initialize(objHero);
            }
//
//			if (index < ObjectSelf.GetInstance ().HeroContainerBag.GetHeroList ().Count) {
//								uiIt.index = index;
//								uiIt.m_id = index;
//								uiIt.Initialize (objHero);
//						}
//			//else if(index ==
//			else
//			{
//				uiIt.index = index;
//				uiIt.m_id = index;
//				uiIt.Initialize(objHero);
//			}

//            if (index == noGetHeros.Count && (noGetHeros.Count % 2 != 0))   //当显示未获取的英雄时  需要空出一个空格
//            {
//                uiIt.index = index;
//                uiIt.m_id = index;
//                uiIt.Initialize(objHero, ItemType.Empty);
//            }
//            else
//            {
//                uiIt.index = index;
//                uiIt.m_id = index;
//                uiIt.Initialize(objHero);
//            }
        }
Esempio n. 2
0
        void TranHeroList(List <ObjectCard> list)
        {
            heroDatas.Clear();
            Dictionary <int, int> noGetIDs = new Dictionary <int, int>();

            noGetHeros.Clear();
            //先显示已拥有英雄
            foreach (ObjectCard oc in list)
            {
                HeroItemData data = new HeroItemData();
                data.objcet      = oc;
                data.heroTableID = -1;
                heroDatas.Add(data);
                noGetIDs.Add(GameUtils.GetHeroIDNum(oc.GetHeroRow().GetID()), -1);
            }

            // 插入一条无用数据
            if (ObjectSelf.GetInstance().HeroContainerBag.GetHeroList().Count % 2 != 0)
            {
                heroDatas.Add(new HeroItemData());
            }

            //再显示未获得英雄
            Dictionary <int, IExcelBean> table = DataTemplate.GetInstance().m_HeroTable.getData();
            int id = -1;

            foreach (var item in table)
            {
                string endChar = item.Key.ToString().Substring(item.Key.ToString().Length - 1, 1);
                string paixuId = ((HeroTemplate)item.Value).getPaxid().ToString();
                // Debug.LogError("substring:" + endChar + "---paixun:" + paixuId);
                if (endChar.Contains(paixuId) && !noGetIDs.TryGetValue(GameUtils.GetHeroIDNum(item.Key), out id))
                {
                    noGetHeros.Add((HeroTemplate)item.Value);
                    noGetIDs.Add(GameUtils.GetHeroIDNum(item.Key), -1);
                }
            }
            //排序
            noGetHeros.Sort(new NotHeroComparer());
            for (int i = 0; i < noGetHeros.Count; i++)
            {
                HeroItemData data = new HeroItemData();
                data.objcet      = null;
                data.heroTableID = noGetHeros[i].GetID();
                heroDatas.Add(data);
            }
        }