Exemplo n.º 1
0
        /// <summary>
        /// 在缓冲区接收到一个完整消息
        /// </summary>
        private void OnReadBuffComplete()
        {
            if (m_bIsReadingHead == true)
            {
                Int32 nSize = BitConverter.ToInt32(m_ReceiveByteBuff, 0);
                nSize = IPAddress.NetworkToHostOrder(nSize);

                m_nReceiveBuffReadLength = nSize;
                m_bIsReadingHead         = false;
            }
            else
            {
                bool bPackReceivedMsg = false;
                if (m_nReceiveBuffPos > 0)
                {
                    Int32  nSize         = m_nReceiveBuffPos + 1;
                    Byte[] byteDataArray = new Byte[nSize];
                    for (Int32 i = 0; i < nSize; ++i)
                    {
                        byteDataArray[i] = m_ReceiveByteBuff[i];
                    }
                    bPackReceivedMsg = m_QueMsgReceive.Push(byteDataArray);
                }
                if (bPackReceivedMsg == false)
                {
                    BTDebug.Error("Push BTMessage Failed, Message Package Lose");
                }

                m_nReceiveBuffReadLength = CBTByteNetStream.cnBTMsgHeadSize;
                m_bIsReadingHead         = true;
            }
            m_nReceiveBuffPos = 0;
        }
Exemplo n.º 2
0
        protected virtual void OnReceiveMessage(Int32 nReadByteSize)
        {
            Byte[] msgByteArray = new Byte[nReadByteSize];
            for (Int32 i = 0; i < nReadByteSize; ++i)
            {
                msgByteArray[i] = m_ReceiveByteBuff[i];
            }

            if (m_QueMsgReceive.Push(msgByteArray) == false)
            {
                BTDebug.Error("Receive Msg Push Queue Error, Message Lose!", "NET");
            }

            m_nReceiveBuffPos = 0;
        }
Exemplo n.º 3
0
 private void OnGameComplete()
 {
     BTDebug.Error("UnExcepted GameComplete Found", "CLIENT");
     return;
 }