/// <summary> /// Initializes a new instance of the <see cref="LS_NETSIM.LS_CommandRegistry.PacketHandler"/> struct. /// </summary> /// <param name='commandID'> /// Id assigned to the command /// </param> /// <param name='serialize'> /// Serializer method /// </param> /// <param name='deserialize'> /// Deserializer method /// </param> public PacketHandler(short commandID, Type objectType, PacketHandling.iPacketHandler instance, System.Func<object[], byte[]> serialize, System.Func<byte[], object[]> deserialize) { CommandID = commandID; ObjectType = objectType; Instance = instance; Serialize = serialize; Deserialize = deserialize; }
/// <summary> /// Register a packet /// </summary> /// <param name="packet"></param> public void RegisterCommand(PacketHandling.iPacketHandler packet) { // Create Handler PacketHandler ph = new PacketHandler((short)_packetHandlers.Count, packet.GetType(), packet, packet.Serialize, packet.Deserialize); // Register _packetHandlers.Add(packet.CommandName, ph); }