Beispiel #1
0
    void CreateNullItem(MallSubTableType table)
    {
        int num = getNullItemNum(table);

        while (num > 0)
        {
            CreateMallItem(null, table);
            --num;
        }
    }
Beispiel #2
0
    void CreateMallItem(MallTableItem item, MallSubTableType type = MallSubTableType.None)
    {
        GameObject go = WindowManager.Instance.CloneGameObject(mMallItemPrefab);

        if (go == null)
        {
            return;
        }

        go.SetActive(true);

        go.name = (item == null) ? "504" : item.resId.ToString();

        MallItemUI mallItem = new MallItemUI(go);

        switch (type)
        {
        case MallSubTableType.HotSale:
            go.transform.parent     = rGrid.transform;
            go.transform.localScale = Vector3.one;
            mallItem.ShowHuiSprite(false);
            mHotItems.Add(mallItem);
            //rGrid.repositionNow = true;
            break;

        case MallSubTableType.LimitCount:
            go.transform.parent     = xGrid.transform;
            go.transform.localScale = Vector3.one;
            mLimitItems.Add(mallItem);
            //xGrid.repositionNow = true;
            break;

        default:
            GameDebug.LogError("商城商品所在分栏错误");
            break;
        }

        if (item != null)
        {
            if (!mAllItemsLists.ContainsKey(item.resId))
            {
                mAllItemsLists.Add(item.resId, mallItem);
            }
        }

        mallItem.SetData(item);
        UIEventListener.Get(go).onClick = onMallItemClick;
    }
    public BetterList <MallTableItem> GetEffectMallItemsByType(MallSubTableType type)
    {
        BetterList <MallTableItem> list = new BetterList <MallTableItem>();
        BetterList <MallTableItem> temp = GetEffectMallItems();

        foreach (MallTableItem item in temp)
        {
            if (item == null)
            {
                continue;
            }

            if (item.subField == (int)type)
            {
                list.Add(item);
            }
        }

        return(list);
    }
Beispiel #4
0
    int getNullItemNum(MallSubTableType table)
    {
        int num = 0;

        switch (table)
        {
        case MallSubTableType.HotSale:
            num = mHotItems.size;
            break;

        case MallSubTableType.LimitCount:
            num = mLimitItems.size;
            break;
        }

        if (num < 8)
        {
            return(8 - num);
        }
        else
        {
            return((num % 2 == 0) ? 0 : 1);
        }
    }