Пример #1
0
 //显示小结算玩家信息
 public void ShowSmallResult(Actor_FiveStar_SmallResult smallResult)
 {
     Show();
     PlayMusic(smallResult);           //根据情况播放音乐
     if (CardFiveStarRoom.Ins != null) //如果room的Ins等于空 说明在录像模式
     {
         CurrRoomType = CardFiveStarRoom.Ins._RoomType;
     }
     else
     {
         CurrRoomType = RoomType.RoomCard;//录像只能是房卡模式
     }
     if (CurrRoomType == RoomType.Match)
     {
         ShowMatchUI();
     }
     else if (CurrRoomType == RoomType.RoomCard)
     {
         ShowRoomCardUI();
     }
     for (int i = 0; i < smallResult.SmallPlayerResults.Count; i++)
     {
         _smallPlayerInfos[i].SetUI(smallResult.SmallPlayerResults[i]);
     }
     for (int i = smallResult.SmallPlayerResults.Count; i < _smallPlayerInfos.Count; i++)
     {
         _smallPlayerInfos[i].Hide();
     }
     ShowMaiMaPai(smallResult.MaiMaCard);
 }
        //计算下局谁坐庄先摸牌 和如果是四人房谁 休息

        //发送小结算消息
        public static void SendSamllResults(this FiveStarRoom fiveStarRoom)
        {
            Actor_FiveStar_SmallResult actorFiveStarSmall = new Actor_FiveStar_SmallResult();

            actorFiveStarSmall.SmallPlayerResults = fiveStarRoom.SmallPlayerResults;
            actorFiveStarSmall.MaiMaCard          = fiveStarRoom.MaiMaCard; //买马的牌 赋值
            fiveStarRoom.RecordSmallResult(actorFiveStarSmall);             //记录小结算信息
            fiveStarRoom.BroadcastMssagePlayers(actorFiveStarSmall);
        }
Пример #3
0
 //游戏小结算
 public void SmllResult(Actor_FiveStar_SmallResult message)
 {
     _RoomState = RoomStateType.ReadyIn;
     for (int i = 0; i < message.SmallPlayerResults.Count; i++)
     {
         _ServerSeatIndexInPlayer[message.SmallPlayerResults[i].SeatIndex]
         .SmallResult(message.SmallPlayerResults[i]);    //显示该玩家的牌
     }
 }
Пример #4
0
 //显示小结算
 public void ShowSmallResult(Actor_FiveStar_SmallResult result)
 {
     if (result.RpcId != -1)
     {
         Actor_FiveStar_SmallResultHandler.AwayWinnerWinCard(result);
         result.RpcId = -1;
     }
     UIComponent.GetUiView <FiveStarSmallResultPanelComponent>().ShowSmallResult(result);
 }
        //存储小局战绩信息
        public static void SaveParticularMiltary(this FiveStarRoom fiveStarRoom, Actor_FiveStar_SmallResult actorFiveStarSmall)
        {
            //只有房卡才记录
            if (fiveStarRoom.RoomType != RoomType.RoomCard)
            {
                return;
            }
            ParticularMiltary particularMiltary = ComponentFactory.Create <ParticularMiltary>();

            particularMiltary.DataId = fiveStarRoom.StartVideoDataId + fiveStarRoom.CurrOfficNum; //录像数据ID
            particularMiltary.Time   = TimeTool.GetCurrenTimeStamp();                             //当前时间
            for (int i = 0; i < actorFiveStarSmall.SmallPlayerResults.Count; i++)
            {
                particularMiltary.GetScoreInfos.Add(actorFiveStarSmall.SmallPlayerResults[i].GetScore); //得分情况
            }
            fiveStarRoom.ParticularMiltarys.Add(particularMiltary);                                     //添加到小局信息里面
            fiveStarRoom.SaveParticularMiltaryRecordData(particularMiltary.DataId);                     //存储当前小局对战具体信息
        }
Пример #6
0
 //播放音乐
 public void PlayMusic(Actor_FiveStar_SmallResult smallResult)
 {
     for (int i = 0; i < smallResult.SmallPlayerResults.Count; i++)
     {
         CardFiveStarPlayer cardFiveStarPlayer;
         if (CardFiveStarRoom.Ins != null)
         {
             cardFiveStarPlayer = CardFiveStarRoom.Ins.GetFiveStarPlayer(smallResult.SmallPlayerResults[i].SeatIndex);
         }
         else
         {
             cardFiveStarPlayer = FiveStarVideoRoom.Ins.GetFiveStarPlayer(smallResult.SmallPlayerResults[i].SeatIndex);
         }
         if (cardFiveStarPlayer._user.UserId == UserComponent.Ins.pUserId)
         {
             if (smallResult.SmallPlayerResults[i].GetScore > 0)
             {
                 UIComponent.GetUiView <CardFiveStarRoomPanelComponent>().PlayMusic(CardFiveRoomMusicType.Win); //播放胜利背景音乐
                 return;
             }
         }
     }
     UIComponent.GetUiView <CardFiveStarRoomPanelComponent>().PlayMusic(CardFiveRoomMusicType.Lose); //播放失败背景音乐
 }
Пример #7
0
 //记录小结算信息
 public static void RecordSmallResult(this FiveStarRoom fiveStarRoom, Actor_FiveStar_SmallResult smallResult)
 {
     fiveStarRoom.RecordInfo(FiveStarVideoOpcode.SmallResult, smallResult);
     fiveStarRoom.SaveParticularMiltary(smallResult);//正常小结算直接存储
 }
Пример #8
0
 public IEnumerator StarPlay(List <object> datas)
 {
     UIComponent.GetUiView <CardFiveStarVideoPanelComponent>().SetTotalScheduleText(datas.Count - 1); //初始化不算步骤 所有减一
     _ResideNum = 84;                                                                                 //初始化牌数量
     _VideoData = datas;
     for (int i = 0; i < datas.Count; i++)
     {
         UIComponent.GetUiView <CardFiveStarVideoPanelComponent>().SetCurrScheduleText(i);
         object data = datas[i];
         if (data.GetType() == typeof(Video_GameInit))
         {
             Video_GameInit meesage = data as Video_GameInit;
             GameInit(meesage);
         }
         else if (data.GetType() == typeof(Video_Deal))
         {
             Video_Deal meesage = data as Video_Deal;
             Deal(meesage);
             yield return(new WaitForSeconds(2f));
         }
         else if (data.GetType() == typeof(Video_PiaoFen))
         {
             Video_PiaoFen meesage = data as Video_PiaoFen;
             _Coroutines[_Coroutines.Length - 1] = CoroutineMgr.StartCoroutinee(PiaoFen(meesage));
             yield return(new WaitForSeconds(2f));
         }
         else if (data.GetType() == typeof(Actor_FiveStar_PlayCardResult))
         {
             Actor_FiveStar_PlayCardResult meesage = data as Actor_FiveStar_PlayCardResult;
             _PlayerDic[meesage.SeatIndex].Video_ChuCard(meesage.Card);
             CurrEndChuCardSeatIndex = meesage.SeatIndex;
             yield return(new WaitForSeconds(1f));
         }
         else if (data.GetType() == typeof(Actor_FiveStar_MoPai))
         {
             Actor_FiveStar_MoPai meesage = data as Actor_FiveStar_MoPai;
             _PlayerDic[meesage.SeatIndex].Video_MoCard(meesage.Card);
             ReduceCardTotalNum(1);//显示减少一张牌的数量
             yield return(new WaitForSeconds(0.5f));
         }
         else if (data.GetType() == typeof(Actor_FiveStar_OperateResult))
         {
             Actor_FiveStar_OperateResult meesage = data as Actor_FiveStar_OperateResult;
             _PlayerDic[meesage.SeatIndex].Video_PengGangHu(meesage.OperateInfo.OperateType, meesage.OperateInfo.Card, meesage.OperateInfo.PlayCardIndex);
             yield return(new WaitForSeconds(1f));
         }
         else if (data.GetType() == typeof(Actor_FiveStar_LiangDao))
         {
             Actor_FiveStar_LiangDao meesage = data as Actor_FiveStar_LiangDao;
             _PlayerDic[meesage.SeatIndex].Video_LiangDao();
             yield return(new WaitForSeconds(1f));
         }
         else if (data.GetType() == typeof(Actor_FiveStar_MaiMa))
         {
             Actor_FiveStar_MaiMa meesage = data as Actor_FiveStar_MaiMa;
             MaiMa(meesage);
             yield return(new WaitForSeconds(2f));
         }
         else if (data.GetType() == typeof(Actor_FiveStar_SmallResult))
         {
             Actor_FiveStar_SmallResult meesage = data as Actor_FiveStar_SmallResult;
             ShowSmallResult(meesage);
         }
     }
 }