void RefreshAllData(LocalNotification e) { ArgsRefreshData args = e.param as ArgsRefreshData; if (args != null) { InitGameInfo(); if (args.action == null || args.action.action_id == 0) { return; } var curPlayerPosType = RoomInfo.Instance.GetPlayerPosById(args.action.action_id); firstPlayerId = args.action.action_id; var selfId = PlayerInfo.Instance.mPlayerPid; bool isJiefeng = args.action.action_type == MsgActionType.MsgActionTypeJiefeng; bool isMustPutCard = args.action.last_operation_pid == selfId || isJiefeng || args.action.last_operation_pid == 0; if (PlayingGameInfo.Instance.mTributeInfo != null && PlayingGameInfo.Instance.mTributeInfo.start_tag != 1) { RefreshTributeData(false); ShowStatusBtn(false, false); } else { ShowStatusBtn(args.action.action_id == PlayerInfo.Instance.mPlayerPid, isMustPutCard); } SetArrowPlayer(curPlayerPosType); } }
void RefreshAllData(LocalNotification e) { SelfCardsManager.Instance.ClearAllSelectCards(); ArgsRefreshData args = e.param as ArgsRefreshData; if (args != null) { var roomInfo = RoomInfo.Instance; InitLicense(); InitSelfData(); //检查亮牌 // ReConnectShowLightCard(); //刷新其他玩家剩余牌数 IEnumerator <MsgPlayerInfo> iPlayersCardLastNum = args.playerInfoList.GetEnumerator(); while (iPlayersCardLastNum.MoveNext()) { var posType = roomInfo.GetPlayerPosById(iPlayersCardLastNum.Current.player_id); var lastCardCount = (int)iPlayersCardLastNum.Current.remaindCarsNum; // playerRestCardNum[posType] = lastCardCount; // SetRestCardNum(lastCardCount, posType); } //刷新最后三轮牌的数据 IEnumerator <MsgLast3Card> iPlayersLast3Card = args.last3CardList.GetEnumerator(); while (iPlayersLast3Card.MoveNext()) { var posType = roomInfo.GetPlayerPosById(iPlayersLast3Card.Current.player_id); if (posType != EPlayerPositionType.ENull) { // if (!IsGameOverPlayer(args.gameOverInfoList, iPlayersLast3Card.Current.player_id)) ; { // RefreshPlayerCards(posType, iPlayersLast3Card.Current.card, false); } } } //刷新所有玩家头游状态 if (args.gameOverInfoList != null && args.gameOverInfoList.Count > 0) { for (int i = 0; i < args.gameOverInfoList.Count; i++) { var gameOverItem = args.gameOverInfoList[i]; PlayingGameInfo.Instance.AddLastCleanPlayerDic(roomInfo.GetPlayerPosById(gameOverItem.player_id)); ArgsGameCleanInfo cleanArgs = new ArgsGameCleanInfo(); cleanArgs.playerId = gameOverItem.player_id; cleanArgs.rank = gameOverItem.rank; NotificationCenter.Instance().PostDispatchEvent((uint)ENotificationMsgType.EGameClean, cleanArgs); } } CheckShowTeamerCards(args.djCards); //展示对家的牌 } }