Ejemplo n.º 1
0
    /// <summary>
    /// 返回排行榜数据列表
    /// </summary>
    /// <param name="flag">返回类型码   1:需要更新数据,0:不需要更新数据</param>
    /// <param name="luaTable">排行榜数据</param>
    /// <param name="time">时间戳</param>
    /// <param name="hasData">后续数据标记 1:还有后续数据,0:没有后续数据</param>
    public void OnRankListResp(byte flag, LuaTable luaTable, uint time, byte hasData)
    {
        TimeUseSendToServer = time; // 时间戳

        // 后续数据标记 1:还有后续数据,0:没有后续数据
        if (hasData == 1)
        {
            m_rankingMainDataHasDataMap[RankType] = true;
        }
        else
        {
            m_rankingMainDataHasDataMap[RankType] = false;
        }

        // 返回类型码 1:需要更新数据
        if (flag == 1)
        {
            m_rankingMainDataMap.Clear();        // 数据已经更新,清空缓存数据
            m_rankingMainDataHasDataMap.Clear(); // 清空是否有后续数据标记列表
        }

        List <RankingMainData> rankingMainDataList = new List <RankingMainData>();

        if (Utils.ParseLuaTable(luaTable, out rankingMainDataList))
        {
            if (rankingMainDataList.Count > 0)
            {
                RankingMainDataPage rankingMainDataPage = new RankingMainDataPage();
                rankingMainDataPage.page = RankPage;
                rankingMainDataPage.RankingMainDataList = rankingMainDataList;

                Dictionary <int, RankingMainDataPage> rankingMainDataPageList = null;
                if (m_rankingMainDataMap.ContainsKey(RankType))
                {
                    rankingMainDataPageList = m_rankingMainDataMap[RankType];
                }
                else
                {
                    rankingMainDataPageList = new Dictionary <int, RankingMainDataPage>();
                }
                rankingMainDataPageList[RankPage] = rankingMainDataPage;
                m_rankingMainDataMap[RankType]    = rankingMainDataPageList;
            }
            else
            {
                if (RankingUIViewManager.Instance.CurrentPage != RankingUIViewManager.DefaultPage)
                {
                    RankType = CANREQRANKTYPE;
                    RankPage = CANREQRANKPAGE;
                    MogoGlobleUIManager.Instance.ShowWaitingTip(false);
                    RankingUIViewManager.Instance.ShowRankingUIWaitingTip(false);
                    return;
                }
            }
        }

        SetRankingMainDataList(); // 设置排行榜数据列表
    }
Ejemplo n.º 2
0
    /// <summary>
    /// 返回排行榜数据列表
    /// </summary>
    /// <param name="flag">返回类型码   1:需要更新数据,0:不需要更新数据</param>
    /// <param name="luaTable">排行榜数据</param>
    /// <param name="time">时间戳</param>
    /// <param name="hasData">后续数据标记 1:还有后续数据,0:没有后续数据</param>
    public void OnRankListResp(byte flag, LuaTable luaTable, uint time, byte hasData)
    {
        TimeUseSendToServer = time; // 时间戳

        // 后续数据标记 1:还有后续数据,0:没有后续数据
        if (hasData == 1)
            m_rankingMainDataHasDataMap[RankType] = true;
        else
            m_rankingMainDataHasDataMap[RankType] = false;

        // 返回类型码 1:需要更新数据
        if (flag == 1)
        {
            m_rankingMainDataMap.Clear(); // 数据已经更新,清空缓存数据
            m_rankingMainDataHasDataMap.Clear(); // 清空是否有后续数据标记列表
        }

        List<RankingMainData> rankingMainDataList = new List<RankingMainData>();
        if (Utils.ParseLuaTable(luaTable, out rankingMainDataList))
        {
            if (rankingMainDataList.Count > 0)
            {
                RankingMainDataPage rankingMainDataPage = new RankingMainDataPage();
                rankingMainDataPage.page = RankPage;
                rankingMainDataPage.RankingMainDataList = rankingMainDataList;

                Dictionary<int, RankingMainDataPage> rankingMainDataPageList = null;
                if (m_rankingMainDataMap.ContainsKey(RankType))
                    rankingMainDataPageList = m_rankingMainDataMap[RankType];
                else
                    rankingMainDataPageList = new Dictionary<int, RankingMainDataPage>();
                rankingMainDataPageList[RankPage] = rankingMainDataPage;
                m_rankingMainDataMap[RankType] = rankingMainDataPageList;
            }
            else
            {
                if (RankingUIViewManager.Instance.CurrentPage != RankingUIViewManager.DefaultPage)
                {
                    RankType = CANREQRANKTYPE;
                    RankPage = CANREQRANKPAGE;
                    MogoGlobleUIManager.Instance.ShowWaitingTip(false);
					RankingUIViewManager.Instance.ShowRankingUIWaitingTip(false);
                    return;
                }
            }            
        }

        SetRankingMainDataList(); // 设置排行榜数据列表
    }