/// <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); } } }
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); } }
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(""); }
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); }
/// <summary> /// 房间状态变化 /// </summary> /// <param name="roomStatus"></param> public void RoomStatusChangeNotify(RoomEntity.RoomStatus roomStatus) { Debug.Log("房间状态变更为" + roomStatus.ToString()); CurrentRoom.Status = roomStatus; SendRoomInfoChangeNotify(); }