예제 #1
0
        private void HandlePacketParse(ChannelID channel, Peer peer, Packet rawPacket)
        {
            var cid     = (int)peer.UserData;
            var rawData = rawPacket.GetBytes();

            rawData = _blowfish.Decrypt(rawData);
            try
            {
                var packet = BasePacket.Create(rawData, channel);
                OnPacket(this, new LeaguePacketEventArgs(cid, channel, packet));
            }
            catch (NotImplementedException exception)
            {
                OnBadPacket(this, new LeagueBadPacketEventArgs(cid, channel, rawData, exception));
            }
            catch (IOException exception)
            {
                OnBadPacket(this, new LeagueBadPacketEventArgs(cid, channel, rawData, exception));
            }
        }
예제 #2
0
        private void HandlePacketParse(ChannelID channel, Peer peer, Packet rawPacket)
        {
            var cid     = (ClientID)peer.UserData;
            var rawData = rawPacket.GetBytes();

            rawData = _blowfish.Decrypt(rawData);
            try
            {
                using (var reader = new PacketReader(rawData))
                {
                    var packet = reader.ReadPacket(channel);
                    OnPacket(this, new LeaguePacketEventArgs(cid, channel, packet));
                }
            }
            catch (NotImplementedException exception)
            {
                OnBadPacket(this, new LeagueBadPacketEventArgs(cid, channel, rawData, exception));
            }
            catch (IOException exception)
            {
                OnBadPacket(this, new LeagueBadPacketEventArgs(cid, channel, rawData, exception));
            }
        }