Esempio n. 1
0
 public void ClearRoomListData()
 {
     ListHall.DataSource.Clear();
     AllDataSource.Clear();
     m_CurHallItem     = null;
     m_CurSelectRoomID = -1;
 }
Esempio n. 2
0
        public void OnSelectRoomClick(int nIndex, ListViewItem item)
        {
            if (PassWordView == null)
            {
                return;
            }

            m_CurHallItem     = ListHall.DataSource[nIndex];
            m_CurSelectRoomID = m_CurHallItem.nRoomId;
        }
Esempio n. 3
0
        public void SetRoomListData(IntPtr ptrParam, int nPtrLen)
        {
            IntPtrVaArgParseHelper    helper = new IntPtrVaArgParseHelper(ptrParam, nPtrLen);
            cmd_match_hall_rooms_head head   = helper.get <GameLogic.cmd_match_hall_rooms_head>();

            for (int i = 0; i < head.nRoomCount; ++i)
            {
                GameLogic.cmd_match_hall_add_room cmdNodeData = helper.get <GameLogic.cmd_match_hall_add_room>();

                UListItemHallData hallData = new UListItemHallData();
                hallData.nRoomIndex        = cmdNodeData.nRoomIndex;
                hallData.nRoomId           = cmdNodeData.nRoomIndex;
                hallData.RoomName          = cmdNodeData.szRoomName;
                hallData.GameMap           = cmdNodeData.szMapDes;
                hallData.nCurPlayerCount   = cmdNodeData.nCurPlayerNum;
                hallData.nTotalPlayerCount = cmdNodeData.nMaxPlayerNum;
                hallData.bLock             = cmdNodeData.bLock > 0 ? true : false;
                ListHall.DataSource.Add(hallData);
                UListItemHallData hallDataCpy = hallData;

                AllDataSource.Add(hallDataCpy);
            }

            if (m_CurSelectRoomID > 0)
            {
                for (int i = 0; i < ListHall.DataSource.Count; i++)
                {
                    UListItemHallData temp = ListHall.DataSource[i];
                    if (temp.nRoomId == m_CurSelectRoomID)
                    {
                        ListHall.Select(i);
                        break;
                    }
                }
            }
            else
            {
                // 默认选中一个无密码、人数不足的房间
                for (int i = 0; i < ListHall.DataSource.Count; i++)
                {
                    UListItemHallData temp = ListHall.DataSource[i];
                    if (temp.nCurPlayerCount < temp.nTotalPlayerCount && !temp.bLock)
                    {
                        m_CurHallItem     = temp;
                        m_CurSelectRoomID = temp.nRoomId;
                        ListHall.Select(i);
                        break;
                    }
                }
            }
        }
Esempio n. 4
0
        public void OnAddButtonClickInHall()
        {
            if (GameHallViewWnd == null || CreateRoomView.gameObject.activeSelf)
            {
                return;
            }

            // 失去选中框时,默认选择一个可进的,如果没有引导创建房间
            if (m_CurHallItem == null)
            {
                // 默认选中一个无密码、人数不足的房间
                for (int i = 0; i < ListHall.DataSource.Count; i++)
                {
                    UListItemHallData temp = ListHall.DataSource[i];
                    if (temp.nCurPlayerCount < temp.nTotalPlayerCount && !temp.bLock)
                    {
                        m_CurHallItem     = temp;
                        m_CurSelectRoomID = temp.nRoomId;
                        ListHall.Select(i);
                        break;
                    }
                }

                if (m_CurHallItem == null)
                {
                    TooltipAndDialog.UIDialogData data = new TooltipAndDialog.UIDialogData(
                        title: ULocalizationService.Instance.Get("UIView", "Common", "TipText"),
                        message: ULocalizationService.Instance.Get("UIView", "HallRoom", "CreateTipContent"),
                        buttons: new UIWidgets.DialogActions()
                    {
                        { ULocalizationService.Instance.Get("UIView", "Common", "ConfirmBtn"), ConfirmCreateRoom },
                        { ULocalizationService.Instance.Get("UIView", "Common", "CancelBtn"), null }
                    }
                        );
                    UISystem.Instance.SendWndMessage(WndMsgID.WND_MSG_COMMON_DIALOG, data);

                    return;
                }
            }

            if (m_CurHallItem.bLock)
            {
                PassWordView.SetPasssWordViewVisible(true);
                PassWordView.SetSetPasssWordViewRoomName(m_CurHallItem.RoomName);
            }
            else
            {
                OnGameViewEvent_MatchEnterRoom();
            }
        }
Esempio n. 5
0
        public void OnRefreshButtonClick()
        {
            UIWidgets.ObservableList <UListItemHallData> dataSource = new UIWidgets.ObservableList <UListItemHallData>();
            foreach (UListItemHallData Item in AllDataSource)
            {
                dataSource.Add(Item);
            }

            ListHall.DataSource.Clear();
            ListHall.DataSource.BeginUpdate();
            ListHall.DataSource = dataSource;
            ListHall.DataSource.EndUpdate();

            m_CurHallItem     = null;
            m_CurSelectRoomID = -1;
        }