Exemplo n.º 1
0
    // 刷选职业和种族 TRUE 排除 FALSE 不排除
    public bool SortByOccRace(int cardId)
    {
        HeroInfo heroInfo = GameTable.HeroInfoTableAsset.Lookup(cardId);

        if (null == heroInfo)
        {
            Debug.LogWarning("null == heroInfo item.IDInTable:" + cardId);
            return(true);
        }

        // 职业刷选
        if (m_cardSortUI.GetSelectedOcc().Count != 0)
        {
            // 如果不是是选中的职业 则不显示
            if (!m_cardSortUI.GetSelectedOcc().Contains(heroInfo.Occupation))
            {
                return(true);
            }
        }

        // 种族筛选
        if (m_cardSortUI.GetSelectedRace().Count != 0)
        {
            // 如果不是是选中的职业 则不显示
            if (!m_cardSortUI.GetSelectedRace().Contains(heroInfo.Type))
            {
                return(true);
            }
        }
        return(false);
    }
Exemplo n.º 2
0
    public void UpdateInfo()
    {
//         UILabel popupList = FindChild("PopupList").transform.FindChild("Label").GetComponent<UILabel>();
//         Debug.Log("-------------" + popupList.text);
        int tmpIndex = 0;

        m_cardSortLable.text = CardBag.Singleton.GetSrotString(FriendList.Singleton.m_sortType);

        List <SortableItem> m_infoList = GetFriendListByType();

        m_capacityNumLab.text = "/" + FriendList.Singleton.m_friendCapcity;

        foreach (FriendItem itemInfo in m_infoList)
        {
            int      cardID   = itemInfo.GetItem().IDInTable;
            HeroInfo heroInfo = GameTable.HeroInfoTableAsset.Lookup(cardID);
            // 职业刷选
            if (m_cardSortUI.GetSelectedOcc().Count != 0)
            {
                // 如果不是是选中的职业 则不显示
                if (!m_cardSortUI.GetSelectedOcc().Contains(heroInfo.Occupation))
                {
                    continue;
                }
            }

            // 种族筛选
            if (m_cardSortUI.GetSelectedRace().Count != 0)
            {
                // 如果不是是选中的职业 则不显示
                if (!m_cardSortUI.GetSelectedRace().Contains(heroInfo.Type))
                {
                    continue;
                }
            }
            if ((itemInfo.m_relation & (int)FriendItemType.enFriend) == 0)
            {
                continue;
            }
            if (!m_friendList.ContainsKey(tmpIndex))
            {
                AddGrid(tmpIndex, itemInfo);
            }
            UpdateUIInfo(itemInfo, (UIFriendItem)m_friendList[tmpIndex], tmpIndex);
            tmpIndex++;
        }
        m_curFrdNumLab.text = "" + tmpIndex;
        for (; tmpIndex < m_friendList.Count; tmpIndex++)
        {
            m_friendList[tmpIndex].HideWindow();
            m_friendList[tmpIndex].WindowRoot.GetComponent <Parma>().m_id = -1;
        }
        m_friendGridList.Reposition();
    }
Exemplo n.º 3
0
    void UpdateInfo()
    {
        // if hide then not update
        if (WindowRoot.activeSelf == false)
        {
            return;
        }
        m_capacity.text    = "" + CardBag.Singleton.m_cardNum;
        m_maxCapacity.text = "/" + CardBag.Singleton.m_capacity;

        if (CardBag.Singleton.m_cardNum > CardBag.Singleton.m_capacity)
        {
            m_capacity.color = Color.red;
        }
        else
        {
            m_capacity.color = Color.black;
        }

        m_cardSortLable.text = CardBag.Singleton.GetSrotString(m_cardSortUI.GetLastSortType());
        // 排序好的列表
        List <CSItemGuid> cardList = m_cardSortUI.GetSortReslut(); // CardBag.Singleton.GetSortedCardList();
        // 排序类型
        ENSortType sortType = m_cardSortUI.GetLastSortType();

        int i = 1;

        foreach (CSItemGuid item in cardList)
        {
            CSItem card = CardBag.Singleton.GetCardByGuid(item);
            if (null == card)
            {
                continue;
            }

            int      cardID   = card.IDInTable;
            HeroInfo heroInfo = GameTable.HeroInfoTableAsset.Lookup(cardID);

            if (null == heroInfo)
            {
                Debug.LogWarning("heroInfo == NULL heroInfo cardID:" + cardID);
                continue;
            }
            // 职业刷选
            if (m_cardSortUI.GetSelectedOcc().Count != 0)
            {
                // 如果不是是选中的职业 则不显示
                if (!m_cardSortUI.GetSelectedOcc().Contains(heroInfo.Occupation))
                {
                    continue;
                }
            }

            // 种族筛选
            if (m_cardSortUI.GetSelectedRace().Count != 0)
            {
                // 如果不是是选中的职业 则不显示
                if (!m_cardSortUI.GetSelectedRace().Contains(heroInfo.Type))
                {
                    continue;
                }
            }


            if (false == m_gridList.ContainsKey(i))
            {
                CreateOneGird(i);
            }

            m_gridList[i].Update(card, sortType, i);

            i++;
        }

        // 把剩余的空格子图片置空
        for (; i <= m_gridList.Count; i++)
        {
            if (!m_gridList.ContainsKey(i))
            {
                continue;
            }

            m_gridList[i].SetEmpty();
        }

        // 最后一个格子 是扩充按钮
        int tempInt = CardBag.Singleton.m_capacity + 1;

        if (CardBag.Singleton.m_cardNum > CardBag.Singleton.m_capacity)
        {
            tempInt = CardBag.Singleton.m_cardNum + 1;
        }


        CreateOneGird(tempInt);

        m_gridList[tempInt].SetExpand();

        m_grid.Reposition();

        // 设置背包 中卡牌的空隙 中用来拖拽的 BOX大小
        BoxCollider boxCollider = m_dragBox.GetComponent <BoxCollider>();
        int         totalCol    = User.Singleton.GetBagCapcity() / m_grid.maxPerLine;

        boxCollider.size = new Vector3(boxCollider.size.x, totalCol * m_grid.cellHeight * 2, 0);

        boxCollider.center = new Vector3(boxCollider.center.x, (-1) * totalCol * m_grid.cellHeight / 2, 0);
    }