Exemple #1
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="friendList"></param>
 internal static void RemoveWorldServerList(WorldServerExtendData extendData)
 {
     Monitor.Enter(s_LockWorldServerList);
     {
         s_WorldServerList.Remove(extendData);
     }
     Monitor.Exit(s_LockWorldServerList);
 }
        /// <summary>
        /// 
        /// </summary>
        /// <param name="newNetState"></param>
        public static void NetState_InitializeNetState( NetState newNetState )
        {
            if ( newNetState.EncoderSeed == null && newNetState.ExtendData == null )
            {
                // 初始化客户端加密的数据种子
                newNetState.EncoderSeed = m_CryptTableBuffers.AcquireBuffer();
                Buffer.BlockCopy( ROSECrypt.Instance().CryptTableBuffer, 0, newNetState.EncoderSeed, 0, ROSECrypt.Instance().CryptTableBuffer.Length );

                ROSEMobile l_ROSEMobile = new ROSEMobile();
                newNetState.Mobile = l_ROSEMobile;

                l_ROSEMobile.Player = true;
                l_ROSEMobile.NetState = newNetState;

                WorldServerExtendData l_ExtendData = new WorldServerExtendData();
                l_ExtendData.ROSEMobile = l_ROSEMobile;

                newNetState.ExtendData = l_ExtendData;
            }
            else
                Debug.WriteLine( "ProcessNet.MessagePump_ProcessReceive(...) - newNetState.Seed != null error!" );
        }
 /// <summary>
 /// 
 /// </summary>
 /// <param name="friendList"></param>
 internal static void RemoveWorldServerList( WorldServerExtendData extendData )
 {
     Monitor.Enter( s_LockWorldServerList );
     {
         s_WorldServerList.Remove( extendData );
     }
     Monitor.Exit( s_LockWorldServerList );
 }