Beispiel #1
0
        /// <summary>
        /// 重置
        /// </summary>
        public static void Reset()
        {
            CurrentFieldId = 0;

            IsJoinRoom = false;

            settle = null;
        }
Beispiel #2
0
        /// <summary>
        /// 斗地主房间结算通知
        /// </summary>
        /// <param name="resp"></param>
        public async void DDZhSettlement_Req_Ntt(Actor_DDZhSettlement_Req_Ntt resp)
        {
            DDZGameHelper.IsStartGame = false;

            DDZGameHelper.settle = resp;

            //摊牌
            var showHandData = resp.ShowHand.ToList();

            this.DDZOutCardPlugin.ShowHand(showHandData);

            //将手牌全部清掉
            this.DDZHandCardPlugin.Reset();

            //清除操作提示

            this.DDZOpTipPlugin.Reset();

            //刷新所有玩家数据
            if (DDZGameHelper.settle != null)
            {
                foreach (var item in DDZGameHelper.settle.PlayerData)
                {
                    var vo = DataCenterComponent.Instance.userInfo.getUserByUserID(item.UserId);

                    if (vo != null)
                    {
                        vo.gold = item.Gold;

                        vo.score = (int)item.Score;
                    }
                }
            }

            //刷新座位玩家
            DDZPlayerHeadPlugin.SetOnSeatPlayer();

            //播放角色胜利失败特效

            await Task.Delay(500);

            int lordID = DDZGameHelper.ChangeSeat(DDZGameConfigComponent.Instance.LordID);

            var myVO = DataCenterComponent.Instance.userInfo.getMyUserVo();

            /*
             * if (lordID == 0)
             * {
             *  //如果我是地主
             *
             *  if (myVO.score > 0)
             *  {
             *      this.DDZFXLayerPlugin.PlayFX(DDZ_FX_TYPE.LordWin, 0);
             *  }
             *  else
             *  {
             *      this.DDZFXLayerPlugin.PlayFX(DDZ_FX_TYPE.LordLost, 0);
             *  }
             * }
             * else
             * {
             *  //如果我是农民
             *
             *  if (myVO.score > 0)
             *  {
             *      this.DDZFXLayerPlugin.PlayFX(DDZ_FX_TYPE.NMWin, 0);
             *  }
             *  else
             *  {
             *      this.DDZFXLayerPlugin.PlayFX(DDZ_FX_TYPE.NMLost, 0);
             *  }
             * }
             */

            //根据玩家的分数情况,切换至对应的胜利,失败状态

            if (DDZGameHelper.settle != null)
            {
                foreach (var item in DDZGameHelper.settle.PlayerData)
                {
                    var playerData = item;

                    int realSeatID = DDZGameHelper.ChangeSeat(playerData.ChairId);

                    DDZGamer gamer = DDZPlayerHeadPlugin.GamersDic[realSeatID];

                    if (playerData.Score > 0)
                    {
                        gamer.GetComponent <DDZGamerUIComponent>().SetHeadTransformByIndex(1);
                    }
                    else
                    {
                        gamer.GetComponent <DDZGamerUIComponent>().SetHeadTransformByIndex(2);
                    }
                }
            }


            //显示结算界面
            if (DDZGameHelper.IsJoinRoom)
            {
                await Task.Delay(3000);

                DDZUIFactory.overPanel.Create();
            }
        }