Ejemplo n.º 1
0
        /// <summary>
        /// 转换下家
        /// </summary>
        /// <param name="room">房间</param>
        /// <param name="subCode">是出牌转换还是抢地主转换</param>
        private void Turn(FightRoom room, int subCode)
        {
            int nextUserId = room.TurnNext();

            if (room.leavePlayerIdList.Contains(nextUserId))
            {
                //掉线了就不出牌,
                Turn(room, subCode);
            }
            else
            {
                //没有掉线
                //var client = user.GetClientById(nextUserId);
                //client.StartSend(OpCode.FIGHT, FightCode.CHUPAI_TURN_BRO, null);
                Brocast(room, OpCode.FIGHT, subCode, nextUserId);

                //再添加一个延时任务 30s后不抢自动不抢
                var client = user.GetClientById(nextUserId);
                if (subCode == FightCode.QIANG_TURN_BRO)
                {
                    room.autoBuQiang = TimerMananger.Instance.AddTimeTask((int intPara) => {
                        //30秒后自动不抢
                        Qiang_Landlord(client, false);
                        Console.WriteLine("自动不抢。。。");
                    }, 10);
                }
                else if (subCode == FightCode.CHUPAI_TURN_BRO)
                {
                    //TODO 30s后自动不出
                }
            }
        }