Example #1
0
        /// <summary>
        /// 座位信息变更
        /// </summary>
        /// <param name="data"></param>
        private void OnSeatInfoChanged(TransferData data)
        {
            int seatIndex = data.GetValue <int>("SeatIndex");

            if (seatIndex != m_Index)
            {
                return;
            }

            int playerId = data.GetValue <int>("PlayerId");

            if (playerId == 0)
            {
                gameObject.SetActive(false);
                return;
            }

            gameObject.SetActive(true);
            string avatar     = data.GetValue <string>("Avatar");
            string nickName   = data.GetValue <string>("Nickname");
            int    totalScore = data.GetValue <int>("TotalScore");

            RoomEntity.RoomStatus roomStatus = data.GetValue <RoomEntity.RoomStatus>("RoomStatus");
            TextureManager.Instance.LoadHead(avatar, (Texture2D tex) =>
            {
                if (m_imgHead != null && tex != null)
                {
                    m_imgHead.texture = tex;
                }
            });
            m_txtNickname.SafeSetText(nickName);
            m_txtTotalScore.SafeSetText(totalScore.ToString());
        }
        /// <summary>
        /// 座位信息变更回调
        /// </summary>
        /// <param name="obj"></param>
        private void OnSeatInfoChanged(TransferData data)
        {
            SeatEntity seat     = data.GetValue <SeatEntity>("Seat");
            bool       isPlayer = data.GetValue <bool>("IsPlayer");

            RoomEntity.RoomStatus roomStatus = data.GetValue <RoomEntity.RoomStatus>("RoomStatus");
            if (isPlayer)
            {
                m_ButtonReady.gameObject.SetActive(seat.Status == SeatEntity.SeatStatus.Idle && roomStatus == RoomEntity.RoomStatus.Ready);
                if (m_ButtonCancelReady != null)
                {
                    m_ButtonCancelReady.gameObject.SetActive(seat.Status == SeatEntity.SeatStatus.Ready && roomStatus == RoomEntity.RoomStatus.Ready);
                }
                m_ButtonShare.gameObject.SetActive(roomStatus == RoomEntity.RoomStatus.Ready);
                if (!SystemProxy.Instance.IsInstallWeChat)
                {
                    m_ButtonShare.gameObject.SetActive(false);
                }
                if (m_CancelAuto != null)
                {
                    m_CancelAuto.gameObject.SetActive(seat.IsTrustee);
                }

                //出牌项
                if (roomStatus != RoomEntity.RoomStatus.Begin || seat.Status != SeatEntity.SeatStatus.Operate)
                {
                    m_Operator.ShowChuPaiItem(false);
                }
            }
        }
Example #3
0
    private void OnSeatInfoChanged(TransferData data)
    {
        SeatEntity seat = data.GetValue <SeatEntity>("Seat");

        RoomEntity.RoomStatus roomStatus   = data.GetValue <RoomEntity.RoomStatus>("RoomStatus");
        SeatEntity.SeatStatus playerStatus = data.GetValue <SeatEntity.SeatStatus>("PlayerStatus");
        SetSeatInfo(seat, roomStatus, playerStatus);
    }
        /// <summary>
        /// 玩家操作状态变更
        /// </summary>
        private void OnOperateStateChanged(TransferData data)
        {
            bool isPlayer = data.GetValue <bool>("IsPlayer");

            if (isPlayer)
            {
                RoomEntity.RoomStatus roomStatus = data.GetValue <RoomEntity.RoomStatus>("RoomStatus");
                SeatEntity.SeatStatus seatStatus = data.GetValue <SeatEntity.SeatStatus>("PlayerStatus");
                RefreshAll(roomStatus, seatStatus);
            }
        }
Example #5
0
        private void SetSeatInfo(SeatEntity seat, RoomEntity.RoomStatus roomStatus, SeatEntity.SeatStatus playerStatus)
        {
            if (m_nSeatIndex == seat.Index)
            {
                m_SeatPos = seat.Pos;
                if (seat.PlayerId == 0)
                {
                    m_PlayerInfo.gameObject.SetActive(false);
                    m_Ready.gameObject.SetActive(false);
                    m_UIPass.gameObject.SetActive(false);
                    if (roomStatus == RoomEntity.RoomStatus.Ready && playerStatus == SeatEntity.SeatStatus.Idle)
                    {
                        if (m_BtnChangeSeat != null)
                        {
                            m_BtnChangeSeat.gameObject.SetActive(true);
                        }
                    }
                    else
                    {
                        if (m_BtnChangeSeat != null)
                        {
                            m_BtnChangeSeat.gameObject.SetActive(false);
                        }
                    }
                }
                else
                {
                    m_UIPass.gameObject.SetActive(seat.IsPass);
                    m_PlayerInfo.gameObject.SetActive(true);
                    m_Ready.gameObject.SetActive(seat.Status == SeatEntity.SeatStatus.Ready);
                    if (m_BtnChangeSeat != null)
                    {
                        m_BtnChangeSeat.gameObject.SetActive(false);
                    }
                }
                m_RemainingPokerNum.transform.parent.gameObject.SetActive(roomStatus == RoomEntity.RoomStatus.Begin);
                if (m_RemainingPokerNum.transform.parent.gameObject.activeInHierarchy)
                {
                    m_RemainingPokerNum.SafeSetText(seat.pokerList.Count.ToString());
                }

                m_PlayerInfo.SetUI(seat);

                //if (seat.isDouble && roomStatus == RoomEntity.RoomStatus.Pao)
                //{
                //    PlayUIAnimation(UIAnimationType.UIAnimation_Pao);
                //}
            }
        }
        /// <summary>
        /// 开局
        /// </summary>
        /// <param name="seatList"></param>
        /// <param name="isPlayAnimation"></param>
        public void Begin(RoomEntity.RoomStatus rommStatus, List <SeatEntity> seatList, bool isPlayAnimation, SeatEntity SpadesThreeSeat, System.Action OnComplete)
        {
            int index = SpadesThreeSeat == null ? 0 : SpadesThreeSeat.Index;

            for (int i = 0; i < seatList.Count; ++i)
            {
                if (seatList[i] == null || seatList[i].PlayerId <= 0)
                {
                    continue;
                }
                List <PokerCtrl> pokerList = PrefabManager.Instance.GetHand(seatList[i].Pos);

                if (pokerList != null)
                {
                    m_Seats[seatList[i].Index].Begin(pokerList, isPlayAnimation);
                }
            }

            if (isPlayAnimation)
            {
                m_IsBeginAni = true;
                //黑桃3动画 UIItemNameSpades3
                string path = string.Format("download/{0}/prefab/uiprefab/UIItems/{1}.drb", ConstDefine.GAME_NAME, ConstDefine_PaoDeKuai.UIItemNameSpades3);
                AssetBundleManager.Instance.LoadOrDownload(path, ConstDefine_PaoDeKuai.UIItemNameSpades3, (GameObject go) =>
                {
                    Debug.Log(go.name);


                    if (go != null)
                    {
                        go = Instantiate(go);
                        go.SetParent(m_EffectContainer);

                        go.GetComponent <UIItemPDKSpadesThree>().SetUI(index, OnComplete);
                    }
                });
            }
            else
            {
                if (OnComplete != null)
                {
                    OnComplete();
                }
            }


            //PlayUIAnimation("");
        }
Example #7
0
    private void SetSeatInfo(SeatEntity seat, RoomEntity.RoomStatus roomStatus, SeatEntity.SeatStatus playerStatus)
    {
        if (m_nSeatIndex == seat.Index)
        {
            if (seat.PlayerId == 0)
            {
                m_PlayerInfo.gameObject.SetActive(false);
                m_Ready.gameObject.SetActive(false);
                if (roomStatus == RoomEntity.RoomStatus.Ready && playerStatus == SeatEntity.SeatStatus.Idle)
                {
                    if (m_BtnChangeSeat != null)
                    {
                        m_BtnChangeSeat.gameObject.SetActive(true);
                    }
                }
                else
                {
                    if (m_BtnChangeSeat != null)
                    {
                        m_BtnChangeSeat.gameObject.SetActive(false);
                    }
                }
            }
            else
            {
                m_PlayerInfo.gameObject.SetActive(true);
                m_Ready.gameObject.SetActive(seat.Status == SeatEntity.SeatStatus.Ready);
                if (m_BtnChangeSeat != null)
                {
                    m_BtnChangeSeat.gameObject.SetActive(false);
                }
            }
            m_PlayerInfo.SetUI(seat);

            if (seat.isDouble && roomStatus == RoomEntity.RoomStatus.Pao)
            {
                PlayUIAnimation(UIAnimationType.UIAnimation_Pao);
            }
        }
    }
 public ChangeStatusCommand(RoomEntity.RoomStatus status)
 {
     m_Status = status;
 }
 /// <summary>
 /// 刷新全部操作项目
 /// </summary>
 /// <param name="roomStatus"></param>
 /// <param name="seatStatus"></param>
 public void RefreshAll(RoomEntity.RoomStatus roomStatus, SeatEntity.SeatStatus seatStatus)
 {
     ShowChuPaiItem(roomStatus == RoomEntity.RoomStatus.Begin && seatStatus == SeatEntity.SeatStatus.Operate);
     ShowQiangGuan(false);
 }
Example #10
0
 /// <summary>
 /// 房间状态变化
 /// </summary>
 /// <param name="roomStatus"></param>
 public void RoomStatusChangeNotify(RoomEntity.RoomStatus roomStatus)
 {
     Debug.Log("房间状态变更为" + roomStatus.ToString());
     CurrentRoom.Status = roomStatus;
     SendRoomInfoChangeNotify();
 }