protected override void DiabloToBattleNet(byte[] data, ref PacketFlag flag) { byte[] packetData = new byte[data.Length - 1]; Buffer.BlockCopy(data, 1, packetData, 0, data.Length - 1); BnetClientPacket PacketID = (BnetClientPacket)packetData[0]; try { switch (PacketID) { //TODO: Add the rest of these... case BnetClientPacket.RealmLogonRequest: OnRealmLogonRequest(new BnetClient.RealmLogonRequest(packetData), ref flag); break; case BnetClientPacket.BnetAuthRequest: OnBnetAuthRequest(new BnetClient.BnetAuthRequest(packetData), ref flag); break; } } catch (Exception ex) { Console.WriteLine(PacketID.ToString() + ": " + ex.Message); } }
// Methods public BCPacket(byte[] data) : base(data, Origin.BattleNetClient) { this.PacketID = (BnetClientPacket)data[1]; }