Exemple #1
0
    public static void SendGameShortMsg(Player player, uint id, uint broadcastType)
    {
        NetworkConn conn = GameSystem.Instance.mNetworkManager.m_gameConn;

        if (conn == null)
        {
            return;
        }
        if (_FilterOutMsgByMatchState())
        {
            return;
        }
        InstructionReq instReq = new InstructionReq();

        instReq.id      = id;
        instReq.obj     = broadcastType;
        instReq.char_id = player.m_roomPosId;

        NetworkConn server = GameSystem.Instance.mNetworkManager.m_gameConn;

        if (server != null)
        {
            server.SendPack <InstructionReq>(0, instReq, MsgID.InstructionReqID);
        }
    }
Exemple #2
0
    public static void SendTeamMatchData(TeamMatchData teamData)
    {
        NetworkConn conn = GameSystem.Instance.mNetworkManager.m_gameConn;

        if (conn == null)
        {
            return;
        }
        conn.SendPack(0, teamData, MsgID.TeamMatchDataID);
    }
Exemple #3
0
    public static void SendTurnCheckData(CheckFrame checkData)
    {
        NetworkConn conn = GameSystem.Instance.mNetworkManager.m_gameConn;

        if (conn == null)
        {
            return;
        }
        conn.SendPack(0, checkData, MsgID.CheckFrameID);
    }
Exemple #4
0
    public static void SendTimeTracer(uint msgId, double dCurTime, NetworkConn server)
    {
        if (server == null || !server.IsConnected())
        {
            return;
        }

        TimeTracer tracer = new TimeTracer();

        tracer.sendTimeStamp = dCurTime;
        tracer.id            = msgId;
        server.SendPack <TimeTracer>(0, tracer, MsgID.TimeTracerID);
    }
Exemple #5
0
    //丢帧请求重发
    public static void SendMissTurnReq(uint turnID)
    {
        NetworkConn conn = GameSystem.Instance.mNetworkManager.m_gameConn;

        if (conn == null)
        {
            return;
        }
        MissFrameReq req = new MissFrameReq();

        req.acc_id = MainPlayer.Instance.AccountID;
        req.frame_num.Add(turnID);
        conn.SendPack(0, req, MsgID.MissFrameReqID);
        Debug.Log("Request missed frame, " + turnID);
    }
    private void OnGameServerConn(NetworkConn.Type type)
    {
        if (type == NetworkConn.Type.eGameServer)
        {
            Debug.Log("OnGameServerConn");

            EnterGameSrv req = new EnterGameSrv();
            req.acc_id  = MainPlayer.Instance.AccountID;
            req.session = m_config.session_id;
            if (GameSystem.Instance.mNetworkManager.m_gameConn == null)
            {
                return;
            }
            NetworkConn gameConn = GameSystem.Instance.mNetworkManager.m_gameConn;
            gameConn.SendPack(0, req, MsgID.EnterGameSrvID);
        }
    }
Exemple #7
0
    //For virtual game server
    public static void SendTurn(PlayFrame turn)
    {
        NetworkConn conn = GameSystem.Instance.mNetworkManager.m_gameConn;

        if (conn == null)
        {
            return;
        }
        conn.SendPack <PlayFrame>(0, turn, MsgID.PlayFrameID);
        //Debug.Log("VirtualGameServer, SendTurn " + turn.frameNum);

        //如果使用的是虚拟连接,保证消息立即传回客户端
        if (conn.m_type == NetworkConn.Type.eVirtualServer)
        {
            conn.Update(0f);
        }
    }