예제 #1
0
 public void SetUI(List <OP_MATCH_PLAYER_INFO> lst, MatchHTTPEntity entity)
 {
     if (lst == null || lst.Count == 0 || entity == null)
     {
         return;
     }
     UIViewManager.Instance.LoadItemAsync("UIItemMatchRankList", (GameObject prefab) =>
     {
         for (int i = 0; i < lst.Count; ++i)
         {
             GameObject go = Instantiate(prefab);
             go.SetParent(m_Container);
             UIItemMatchRankList item = go.GetComponent <UIItemMatchRankList>();
             string reward            = string.Empty;
             if (entity.rewardSetting != null)
             {
                 for (int j = 0; j < entity.rewardSetting.Count; ++j)
                 {
                     if (i + 1 <= entity.rewardSetting[j].end && i + 1 >= entity.rewardSetting[j].begin)
                     {
                         reward = string.Format("房卡×{0}", entity.rewardSetting[j].amount);
                         break;
                     }
                 }
             }
             item.SetUI(i + 1, lst[i].avatar, lst[i].nickname, lst[i].gold, reward);
         }
     });
 }
예제 #2
0
 /// <summary>
 /// 打开比赛详情窗口
 /// </summary>
 /// <param name="entity"></param>
 private void OpenMatchDetailView(MatchHTTPEntity entity)
 {
     UIViewUtil.Instance.LoadWindowAsync(UIWindowType.MatchDetail, (GameObject go) =>
     {
         m_UIMatchDetailView = go.GetComponent <UIMatchDetailView>();
         m_UIMatchDetailView.SetUI(entity);
     });
 }
예제 #3
0
 /// <summary>
 /// 报名
 /// </summary>
 public void Enter(MatchHTTPEntity entity)
 {
     m_CurrentSelectMatchEntity = entity;
     if (NetWorkSocket.Instance.Connected(GameCtrl.Instance.SocketHandle))
     {
         NetWorkSocket.Instance.Close(GameCtrl.Instance.SocketHandle);
     }
     UIViewManager.Instance.ShowWait();
     GameCtrl.Instance.SocketHandle = NetWorkSocket.Instance.BeginConnect(entity.ipaddr, entity.port, onConnectedCallBack);
 }
예제 #4
0
 public void SetUI(MatchHTTPEntity entity, Action <MatchHTTPEntity> onEnterClick, Action <MatchHTTPEntity> onSeeDetailClick)
 {
     m_Entity = entity;
     TextureManager.Instance.LoadHead(entity.cover, OnLoadFinish);
     m_Title.SafeSetText(entity.title);
     m_Reward.SafeSetText(entity.reward[0]);
     m_PlayerCount.SafeSetText(string.Format("报名人数:{0}人", entity.player.ToString()));
     m_Cost.SafeSetText(string.Format("报名费用房卡×{0}", entity.costNums.ToString()));
     m_Description.SafeSetText(entity.desc);
     m_OnEnterClick     = onEnterClick;
     m_OnSeeDetailClick = onSeeDetailClick;
 }
예제 #5
0
    /// <summary>
    /// 请求比赛列表回调
    /// </summary>
    /// <param name="args"></param>
    private void OnRequestBattleListCallBack(NetWorkHttp.CallBackArgs args)
    {
        m_isBusy = false;
        if (args.HasError)
        {
            ShowMessage("错误", args.ErrorMsg);
        }
        else
        {
            if (args.Value.code < 0)
            {
                ShowMessage("错误", args.Value.msg);
                return;
            }
            string json = args.Value.data.ToJson();
            List <MatchHTTPEntity> lst = null;
            if (!string.IsNullOrEmpty(json))
            {
                lst = LitJson.JsonMapper.ToObject <List <MatchHTTPEntity> >(json);
            }
            if (m_UIBattleView != null)
            {
                m_UIBattleView.SetUI(lst);
            }

            if (m_CurrentId != 0)
            {
                m_isRebuild = true;
                Debug.Log(m_CurrentId);
                for (int i = 0; i < lst.Count; ++i)
                {
                    if (m_CurrentId == lst[i].id)
                    {
                        m_CurrentSelectMatchEntity = lst[i];
                    }
                    Debug.Log(lst[i].id);
                }

                m_CurrentId = 0;
                if (m_CurrentRoomId == 0)
                {
                    if (NetWorkSocket.Instance.Connected(GameCtrl.Instance.SocketHandle))
                    {
                        NetWorkSocket.Instance.Close(GameCtrl.Instance.SocketHandle);
                    }
                    UIViewManager.Instance.ShowWait();
                    GameCtrl.Instance.SocketHandle = NetWorkSocket.Instance.BeginConnect(m_CurrentSelectMatchEntity.ipaddr, m_CurrentSelectMatchEntity.port, onConnectedCallBack);
                }
            }
        }
    }
예제 #6
0
 /// <summary>
 /// 查看详情按钮点击
 /// </summary>
 /// <param name="obj"></param>
 private void OnSeeDetailClick(MatchHTTPEntity entity)
 {
     OpenMatchDetailView(entity);
 }
예제 #7
0
 /// <summary>
 /// 报名按钮点击
 /// </summary>
 /// <param name="obj"></param>
 private void OnEnterClick(MatchHTTPEntity entity)
 {
     Enter(entity);
 }
예제 #8
0
 public void SetUI(MatchHTTPEntity entity)
 {
     m_Entity = entity;
     OnRewardClick();
 }