Example #1
0
    public void AddGameDeskItem_PC(HallTransfer.RoomDeskInfo tableInfo)
    {
        //PC版
        GameObject temp_obj = null;

        temp_obj = (GameObject)Instantiate(m_objCurDesk, Vector3.zero, m_objCurDesk.transform.localRotation);
        temp_obj.GetComponent <CGameDeskItem>().m_ChairItems.AddRange(temp_obj.GetComponentsInChildren <CGameChairItem>());

        for (int i = 0; i < temp_obj.GetComponent <CGameDeskItem>().m_ChairItems.Count; i++)
        {
            temp_obj.GetComponent <CGameDeskItem>().m_ChairItems[i].deskid  = (uint)m_lstGameDeskList.Count;
            temp_obj.GetComponent <CGameDeskItem>().m_ChairItems[i].chairid = (uint)i;
        }
        temp_obj.transform.name   = "GameItem" + m_lstGameDeskList.Count.ToString();
        temp_obj.transform.parent = m_objDeskGrid.transform;

        temp_obj.transform.localScale = Vector3.one;
        CGameDeskItem gameItem = temp_obj.GetComponent <CGameDeskItem>();

        gameItem.UpdateGameDeskInfo(m_lstGameDeskList.Count, 0, tableInfo);
        m_lstGameDeskList.Add(gameItem);

        // 适应休闲版断线重连后的显示错乱
        if (CGameManager._instance.m_objGameScrollView != null)
        {
            CGameManager._instance.m_objGameScrollView.transform.localScale = Vector3.zero;
        }
    }
Example #2
0
        public void OnSendAllDeskInfo(UInt32 wRoomId, bool playing)
        {
            if (playing)
            {
                return;
            }

            var item = GameApp.GameListMgr.FindRoomItem(wRoomId);

            if (item == null || item.AutoSit)
            {
                return;
            }

            var tempDesk = new HallTransfer.RoomDeskInfo();

            tempDesk.dwGameID     = item.GameNameID;
            tempDesk.dwRoomId     = item.ID;
            tempDesk.dwDeskCount  = item.DeskCount;
            tempDesk.dwDeskPeople = item.DeskPeople;

            //房间桌子信息
//			HallTransfer.Instance.cnSetRoomInfo(tempDesk);//发送桌子数据
            CGameDeskManger._instance.SetGameDeskInfo(tempDesk);            //发送桌子数据
            SendAllUserSitInfo();

            // 发送桌子状态
            foreach (var tempItem in item.Desks)
            {
                OnSendDeskPlayStatuse(tempItem.DeskID, tempItem.Status);
            }
        }
Example #3
0
 /// <summary>
 /// 更新游戏桌子信息
 /// </summary>
 /// <param name="_gameTableInfo"></param>
 public void UpdateGameDeskInfo(int deskID, int curManCount, HallTransfer.RoomDeskInfo _gameTableInfo)
 {
     m_cGameDeskInfo.dwDeskCount  = _gameTableInfo.dwDeskCount;
     m_cGameDeskInfo.dwDeskPeople = _gameTableInfo.dwDeskPeople;
     m_cGameDeskInfo.dwGameID     = _gameTableInfo.dwGameID;
     m_cGameDeskInfo.dwRoomID     = _gameTableInfo.dwRoomId;
     m_cGameDeskInfo.dwDeskID     = (uint)deskID;
     if (m_lblDeskIndex != null)
     {
         m_lblDeskIndex.text = (deskID + 1).ToString();
     }
     if (CChairManger._instance != null)
     {
         if (CChairManger._instance.m_lRoomUChairList.Count > 0)
         {
             if ((uint)deskID == CChairManger._instance.m_lRoomUChairList[0].deskid)
             {
                 if (m_lblDeskName != null)
                 {
                     m_lblDeskName.text = (deskID + 1).ToString() + "号桌";
                 }
             }
         }
     }
     else
     {
         if (m_lblDeskName != null)
         {
             m_lblDeskName.text = (deskID + 1).ToString() + "号桌";
         }
     }
     if (m_lblManCount != null)
     {
         m_lblManCount.text = curManCount.ToString() + "/" + _gameTableInfo.dwDeskPeople.ToString();
     }
     if (m_PeopleSlider != null)
     {
         m_PeopleSlider.value = ((float)curManCount / (float)_gameTableInfo.dwDeskPeople);
     }
     if (m_lblDeskState != null)
     {
         if (m_lblDeskState.text == "游戏中")
         {
         }
         else if (curManCount >= (int)_gameTableInfo.dwDeskPeople)
         {
             m_lblDeskState.text = "满员";
         }
         else
         {
             m_lblDeskState.text = "可进入";
         }
     }
 }
Example #4
0
    //创建桌子
    public void AddGameDeskItem_Phone(HallTransfer.RoomDeskInfo tableInfo)
    {
        GameObject temp_obj = null;

        //手机版
        temp_obj = (GameObject)Instantiate(m_objDeskPrefab_phone, Vector3.zero, m_objCurDesk.transform.localRotation);

        temp_obj.GetComponent <CGameDeskItem>().m_lblDeskName = m_objCurDesk_phone.transform.FindChild("desk_label").GetComponent <UILabel>();

        temp_obj.transform.name       = "GameItem" + m_lstGameDeskList.Count.ToString();
        temp_obj.transform.parent     = m_objDeskGrid.transform;
        temp_obj.transform.localScale = Vector3.one;
        CGameDeskItem gameItem = temp_obj.GetComponent <CGameDeskItem>();

        gameItem.UpdateGameDeskInfo(m_lstGameDeskList.Count, 0, tableInfo);
        m_lstGameDeskList.Add(gameItem);
    }
Example #5
0
    public void SetGameDeskInfo(HallTransfer.RoomDeskInfo deskInfo)
    {
        DeskState = new bool[deskInfo.dwDeskCount];
        for (var i = 0; i < deskInfo.dwDeskCount; i++)
        {
            DeskState[i] = false;                       //设置桌子初始状态
        }

        Debug.LogWarning("SetGameDeskInfo:" + deskInfo.dwGameID.ToString());
        CGameRoomManger._instance.SetTipRoomName(deskInfo.dwRoomId);
        if (CGameManager._instance.m_objFirstPage != null)
        {
            CGameManager._instance.m_objFirstPage.SetActive(false);
        }
        m_RoomDeskInfo = deskInfo;
        HallTransfer.Instance.roomUserList.Clear();        //清空座位上玩家信息
        //if(CGameRoomManger._instance.GetComponent<TweenScale>()!=null)
        {
//			CGameRoomManger._instance.GetComponent<TweenScale>().PlayReverse();
//		}else{
            CGameRoomManger._instance.transform.localScale = Vector3.zero;
        }
        if (GetComponent <TweenScale>() != null)
        {
            GetComponent <TweenScale>().ResetToBeginning();
            GetComponent <TweenScale>().PlayForward();
        }
        else
        {
            transform.localScale = Vector3.one;
        }
        //销毁旧桌子
        for (var i = 0; i < m_lstGameDeskList.Count; i++)
        {
            if (m_lstGameDeskList[i] != null)
            {
                DestroyImmediate(m_lstGameDeskList[i].gameObject);
            }
        }
        m_lstGameDeskList.Clear();
        //选桌子
        for (int i = 0; i < m_objGameDeskPrefab.Length; i++)
        {
            if (m_objGameDeskPrefab[i].name == "DeskItem_" + deskInfo.dwGameID)
            {
                m_objCurDesk = m_objGameDeskPrefab[i];
                break;
            }
        }

        // 接到创建桌子消息,则把当前游戏ID传入returnBtn(防止断线重连后找不到房间)
        uint   tempId;
        uint   tempInt = (deskInfo.dwGameID / 1000);
        string tempStr = deskInfo.dwGameID.ToString().Substring(2);

        uint.TryParse(tempStr, out tempId);
        tempId = tempInt * 100 + tempId;
        if (tempId == 101)
        {
            tempId = 100;
        }
        m_ReturnBtn.GetComponent <CGameItem>().m_cGameInfo.ID = tempId;

        this.GetType().GetMethod(DeskCreatorMethod).Invoke(this, null);
    }
Example #6
0
 public virtual void Init(HallTransfer.RoomDeskInfo deskInfo)
 {
 }
Example #7
0
 public override void Init(HallTransfer.RoomDeskInfo deskInfo)
 {
 }