예제 #1
0
 public bool ParseMessage(CMsg msg)
 {
     try
     {
         if (!m_hashtable.ContainsKey(msg.MsgID.MsgID))
         {
             return(false);
         }
         ParseMessageCallback parsMsgCb = (ParseMessageCallback)m_hashtable[msg.MsgID.MsgID];
         parsMsgCb(msg);
         return(true);
     }
     catch (System.Exception e)
     {
         UnityUtility.CTrace.Singleton.error("处理消息ParseMessage[{0}]失败", e.ToString());
         return(false);
     }
 }
예제 #2
0
 public virtual CMsgID CreateMsgIDByType(Type type)
 {
     try
     {
         Assembly asm = Assembly.GetExecutingAssembly();
         Object   obj = asm.CreateInstance(type.FullName, true);
         if (obj != null)
         {
             CMsg msg = (CMsg)obj;
             if (msg != null)
             {
                 return(msg.MsgID);
             }
         }
         return(null);
     }
     catch (System.Exception)
     {
         return(null);
     }
 }