Пример #1
0
    private bool SendRoleJoinMonth(Byte MonthID)
    {
        if (PlayerRole.Instance.RoleInfo.RoleMe.GetLevel() < FishConfig.Instance.m_MatchInfo.BeginMonthLevel)
        {
            //玩家点击不够 无法开始比赛
            tagUserOperationEvent pUOM = new tagUserOperationEvent(UserOperateMessage.UOM_Month_JoinMonth_Failed_6);
            MsgEventHandle.HandleMsg(pUOM);
            return(false);
        }
        if (!FishConfig.Instance.m_MatchInfo.m_MonthMap.ContainsKey(MonthID))
        {
            tagUserOperationEvent pUOM = new tagUserOperationEvent(UserOperateMessage.UOM_Month_JoinMonth_Failed_1);
            MsgEventHandle.HandleMsg(pUOM);
            return(false);
        }
        if (FishConfig.Instance.m_MatchInfo.m_MonthMap[MonthID].NowIsInStartTime() == 0)
        {
            tagUserOperationEvent pUOM = new tagUserOperationEvent(UserOperateMessage.UOM_Month_JoinMonth_Failed_2);
            MsgEventHandle.HandleMsg(pUOM);
            return(false);
        }
        if (!SignUpList.ContainsKey(MonthID))
        {
            tagUserOperationEvent pUOM = new tagUserOperationEvent(UserOperateMessage.UOM_Month_JoinMonth_Failed_3);
            MsgEventHandle.HandleMsg(pUOM);
            return(false);
        }
        Byte TableType = FishConfig.Instance.m_MatchInfo.m_MonthMap[MonthID].TableTypeID;

        if (PlayerRole.Instance.TableManager.IsCanJoinTable(TableType, true) != TableError.TE_Sucess)//比赛无须转化
        {
            tagUserOperationEvent pUOM = new tagUserOperationEvent(UserOperateMessage.UOM_Month_JoinMonth_Failed_4);
            MsgEventHandle.HandleMsg(pUOM);
            return(false);
        }
        //1.如果玩家在桌子里 我们让玩家离开桌子
        if (PlayerRole.Instance.RoleInfo.RoleMe.GetSeat() != 0xff)
        {
            CL_Cmd_LeaveTable ncbLeave = new CL_Cmd_LeaveTable();
            ncbLeave.SetCmdType(NetCmdType.CMD_CL_LeaveTable);
            NetServices.Instance.Send <CL_Cmd_LeaveTable>(ncbLeave);
        }
        CL_Cmd_JoinMonth ncb = new CL_Cmd_JoinMonth();

        ncb.SetCmdType(NetCmdType.CMD_CL_JoinMonth);
        ncb.MonthID = MonthID;
        NetServices.Instance.Send <CL_Cmd_JoinMonth>(ncb);
        return(true);
    }
Пример #2
0
        public void OnSendLevel()
        {
            //发送玩家离开桌子的命令
            CL_Cmd_LeaveTable ncb = new CL_Cmd_LeaveTable();

            ncb.SetCmdType(NetCmdType.CMD_CL_LeaveTable);
            NetManager.Instance.Send <CL_Cmd_LeaveTable>(ncb);

            PlayerRole.Instance.RoleGameData.OnHandleRoleLeaveTable();

            //让玩家直接离开场景
            // LogicManager.Instance.Back(null);//返回大厅就Ok了
            int bg = 1;

            AudioManager.Instance.PlayerBGMusic(Audio.EffectBGType.EffectBGSound2);
        }
Пример #3
0
    //返回大厅
    public void BackToHall()
    {
        if (SceneMain.IsUserOldServer)
        {
            LogicManager.Instance.LogOff();
            //LogicManager.Instance.Back(null);
        }
        else
        {
            //发送玩家离开桌子的命令
            CL_Cmd_LeaveTable ncb = new CL_Cmd_LeaveTable();
            ncb.SetCmdType(NetCmdType.CMD_CL_LeaveTable);
            NetServices.Instance.Send <CL_Cmd_LeaveTable>(ncb);

            PlayerRole.Instance.RoleGameData.OnHandleRoleLeaveTable();

            //让玩家直接离开场景
            LogicManager.Instance.Back(null);//返回大厅就Ok了
            int bg = 1;
            GlobalAudioMgr.Instance.PlayerBGMusic(Audio.EffectBGType.EffectBGSound2);
        }
    }