@@ -16,16 +16,17 @@ public static void ReadClientAuctionOwnerNotification(Packet packet, params obje
1616
1717 public static void ReadAuctionBucketKey ( Packet packet , params object [ ] idx )
1818 {
19+ packet . ResetBitReader ( ) ;
1920 packet . ReadBits ( "ItemID" , 20 , idx ) ;
2021 var hasBattlePetSpeciesID = packet . ReadBit ( "HasBattlePetSpeciesID" , idx ) ;
2122 packet . ReadBits ( "ItemLevel" , 11 , idx ) ;
2223 var hasSuffixItemNameDescriptionID = packet . ReadBit ( "HasSuffixItemNameDescriptionID" , idx ) ;
2324
2425 if ( hasBattlePetSpeciesID )
25- packet . ReadUInt16 ( "BattlePetSpeciesID" ) ;
26+ packet . ReadUInt16 ( "BattlePetSpeciesID" , idx ) ;
2627
2728 if ( hasSuffixItemNameDescriptionID )
28- packet . ReadUInt16 ( "SuffixItemNameDescriptionID" ) ;
29+ packet . ReadUInt16 ( "SuffixItemNameDescriptionID" , idx ) ;
2930 }
3031
3132 public static void ReadCliAuctionItem ( Packet packet , params object [ ] idx )
@@ -35,6 +36,7 @@ public static void ReadCliAuctionItem(Packet packet, params object[] idx)
3536 var enchantmentsCount = packet . ReadBits ( "EnchantmentsCount" , 4 , idx ) ;
3637 var gemsCount = packet . ReadBits ( "GemsCount" , 2 , idx ) ;
3738 var hasMinBid = packet . ReadBit ( "HasMinBid" , idx ) ;
39+
3840 var hasMinIncrement = packet . ReadBit ( "HasMinIncrement" , idx ) ;
3941 var hasBuyoutPrice = packet . ReadBit ( "HasBuyoutPrice" , idx ) ;
4042 var hasUnitPrice = packet . ReadBit ( "HasUnitPrice" , idx ) ;
@@ -64,6 +66,9 @@ public static void ReadCliAuctionItem(Packet packet, params object[] idx)
6466 packet . ReadInt32 ( "DurationLeft" , idx ) ;
6567 packet . ReadByte ( "DeleteReason" , idx ) ;
6668
69+ if ( ClientVersion . AddedInVersion ( ClientVersionBuild . V4_4_2_59185 ) )
70+ packet . ReadInt32 ( "Unk_442" , idx ) ;
71+
6772 for ( int i = 0 ; i < enchantmentsCount ; i ++ )
6873 Substructures . ItemHandler . ReadItemEnchantData ( packet , idx , "Enchantments" , i ) ;
6974
@@ -377,6 +382,52 @@ public static void HandleAuctionSellItem(Packet packet)
377382 }
378383 }
379384
385+ public static void ReadBucketInfo ( Packet packet , int index )
386+ {
387+ ReadAuctionBucketKey ( packet , index , "Key" ) ;
388+
389+ packet . ReadInt32 ( "TotalQuantity" , index ) ;
390+ packet . ReadInt32 ( "RequiredLevel" , index ) ;
391+ packet . ReadUInt64 ( "MinPrice" , index ) ;
392+ var itemModifiedAppearanceIDsCount = packet . ReadUInt32 ( ) ;
393+ for ( var i = 0u ; i < itemModifiedAppearanceIDsCount ; ++ i )
394+ packet . ReadInt32 ( "ItemModifiedAppearanceID" , index , i ) ;
395+
396+ packet . ResetBitReader ( ) ;
397+ var hasMaxBattlePetQuality = packet . ReadBit ( ) ;
398+ var hasMaxBattlePetLevel = packet . ReadBit ( ) ;
399+ var hasBattlePetBreedID = packet . ReadBit ( ) ;
400+ var hasBattlePetLevelMask = packet . ReadBit ( ) ;
401+ packet . ReadBit ( "ContainsOwnerItem" , index ) ;
402+ packet . ReadBit ( "ContainsOnlyCollectedAppearances" , index ) ;
403+
404+ if ( hasMaxBattlePetQuality )
405+ packet . ReadByte ( "MaxBattlePetQuality" , index ) ;
406+
407+ if ( hasMaxBattlePetLevel )
408+ packet . ReadByte ( "MaxBattlePetLevel" , index ) ;
409+
410+ if ( hasBattlePetBreedID )
411+ packet . ReadByte ( "BattlePetBreedID" , index ) ;
412+
413+ if ( hasBattlePetLevelMask )
414+ packet . ReadUInt32 ( "BattlePetLevelMask" , index ) ;
415+ }
416+
417+ [ Parser ( Opcode . SMSG_AUCTION_LIST_BUCKETS_RESULT ) ]
418+ public static void HandleAuctionListBucketsResult ( Packet packet )
419+ {
420+ var bucketCount = packet . ReadUInt32 ( ) ;
421+ packet . ReadUInt32 ( "DesiredDelay" ) ;
422+ packet . ReadInt32 ( "Unknown830_0" ) ;
423+ packet . ReadInt32 ( "Unknown830_1" ) ;
424+ packet . ReadBit ( "BrowseMode" ) ;
425+ packet . ReadBit ( "HasMoreResults" ) ;
426+
427+ for ( var i = 0 ; i < bucketCount ; ++ i )
428+ ReadBucketInfo ( packet , i ) ;
429+ }
430+
380431 [ Parser ( Opcode . CMSG_AUCTION_LIST_PENDING_SALES ) ]
381432 public static void HandleAuctionZero ( Packet packet )
382433 {
0 commit comments