예제 #1
0
        public override void OnFetchData(EB.Sparx.Response res, int reqInstanceID)
        {
            base.OnFetchData(res, reqInstanceID);

            if (reqInstanceID == GetInfoRequest.GetInstanceID())
            {
                OnGetInfoResponse(res);
            }
            if (reqInstanceID == BuyTimesRequest.GetInstanceID())
            {
                OnBuyResponse(res);
            }
            if (reqInstanceID == RollRequest.GetInstanceID())
            {
                OnInitRollDiceInfoResponse(res);
            }
        }
예제 #2
0
        private void UpdateUI(ArrayList array, int reqInstanceID)
        {
            List <HonorArenaItemData> rankdatas = new List <HonorArenaItemData>();
            long localPlayerId = LoginManager.Instance.LocalUserId.Value;
            HonorArenaItemData m_localPlayerRankData = null;

            for (int i = 0; i < array.Count; i++)
            {
                var data = new HonorArenaItemData(array[i] as Hashtable, i,
                                                  reqInstanceID == allRequest.GetInstanceID());
                if (data.m_Uid == localPlayerId)
                {
                    m_localPlayerRankData = data;
                }
                else
                {
                    if (data.m_Rank >= 0)
                    {
                        rankdatas.Add(data);
                    }
                }
            }

            if (m_localPlayerRankData != null && m_localPlayerRankData.m_Rank >= 0)
            {
                rankdatas.Add(m_localPlayerRankData);
            }

            rankdatas.Sort((x, y) => { return(x.m_Rank - y.m_Rank); });
            rankdatas = rankdatas.GetRange(0, Mathf.Min(100, rankdatas.Count));

            for (int i = rankdatas.Count; i < 4; i++)
            {
                rankdatas.Add(new HonorArenaItemData());
            }

            gridScroll.dataItems = rankdatas.ToArray();
            //更新排名数据
            if (m_localPlayerRankData != null)
            {
                if (reqInstanceID == selfRequest.GetInstanceID())
                {
                    LTUIUtil.SetText(SelfRankLabel, string.Format("{0}", m_localPlayerRankData.m_Rank + 1));
                    string forme = EB.Localizer.GetString("ID_LEGION_TECH_REWARDRATE");
                    LTUIUtil.SetText(OnHookincomeLabel,
                                     string.Format(forme,
                                                   HonorArenaConfig.Instance.GetOneHourByReward(m_localPlayerRankData.m_Rank + 1)));
                    Messenger.Raise(EventName.HonorArenaRankChange, m_localPlayerRankData.m_Rank + 1);
                }
                else
                {
                    LTUIUtil.SetText(AllRankLabel, string.Format("{0}", m_localPlayerRankData.m_Rank + 1));
                }
            }
            else
            {
                if (reqInstanceID == selfRequest.GetInstanceID())
                {
                    LTUIUtil.SetText(SelfRankLabel, EB.Localizer.GetString("ID_ARENA_RANK_OUT_OF_RANGE"));
                }
                else
                {
                    LTUIUtil.SetText(AllRankLabel, EB.Localizer.GetString("ID_ARENA_RANK_OUT_OF_RANGE"));
                }
            }
        }