public static void F_AUCTION_SEARCH_QUERY(BaseClient client, PacketIn packet) { GameClient cclient = (GameClient)client; if (!cclient.IsPlaying() || !cclient.Plr.IsInWorld()) { return; } Player plr = cclient.Plr; packet.Skip(3); byte NumOfSearches = packet.GetUint8(); // Why? packet.Skip(12); // Item Level byte MinLevel = packet.GetUint8(); byte MaxLevel = packet.GetUint8(); byte Rarity = packet.GetUint8(); byte career = packet.GetUint8(); packet.Skip(6); byte NumTypes = packet.GetUint8(); List <byte> Types = new List <byte>(); for (byte i = 0; i < NumTypes; i++) { Types.Add(packet.GetUint8()); } byte NumSlots = packet.GetUint8(); List <byte> Slots = new List <byte>(); for (byte i = 0; i < NumSlots; i++) { Slots.Add(packet.GetUint8()); } bool IsStatistic = packet.GetUint8() == 1; byte Stat = 0; if (IsStatistic) { Stat = packet.GetUint8(); } string SearchTerm = packet.GetPascalString(); string Character = packet.GetPascalString().Replace("^M", string.Empty).Replace("^F", string.Empty); AuctionHouse.SendAuctions(plr, SearchTerm, Character, MinLevel, MaxLevel, Rarity, career, Types, Slots, Stat); cclient.IsPlaying(); }