Ejemplo n.º 1
0
 /// <summary>
 /// Registers a callback for the specified packet type.
 /// </summary>
 /// <typeparam name="T">Type of packet to be hooked</typeparam>
 /// <param name="callback">Callback to be registered</param>
 public void HookPacket <T>(GenericPacketHandler <T> callback) where T : Packet
 {
     if (!_genericPacketHooks.ContainsKey(callback))
     {
         _genericPacketHooks.Add(callback, typeof(T));
     }
     else
     {
         throw new InvalidOperationException("Callback already bound");
     }
 }
Ejemplo n.º 2
0
 public void HookPacket <T>(GenericPacketHandler <T> callb) where T : Packet
 {
     if (!_genericPacketHooks.ContainsKey(callb))
     {
         _genericPacketHooks.Add(callb, typeof(T));
         ConsoleUtilities.TagWriteLine($"Successfully hooked {typeof(T).Name} - {callb.Method.DeclaringType?.Name +"."+ callb.Method.Name}", "HOOKS", ConsoleColor.Cyan);
     }
     else
     {
         return; //todo: log something here
     }
 }