diff options
| author | pete318 <pete318@users.noreply.github.com> | 2016-02-03 00:45:31 +0000 |
|---|---|---|
| committer | Shauren <shauren.trinity@gmail.com> | 2016-04-10 17:48:29 +0200 |
| commit | 7d5d79aa015b21969a1f5ca75ca3efe8cb842f25 (patch) | |
| tree | e21f6f3a63c2a4a3a0891fc4348dee866200dd67 /src/server/game/Server | |
| parent | b23a6aeaff403266491ea75207558bf9917b9cc4 (diff) | |
Implement AuctionHouse features: GetAll scan and search throttling
Implements two standard features of the Auction House.
* GetAll scan, retrieves all auctions and sends them in a single packet.
There's a limitation on how often a player can do this (Max 55000 items)
* Search throttling. For normal searches, the server can send a time
in milliseconds to the client, the client will wait that long between
searches. Delay set in config
Closes #16469
(cherry picked from commit 3aaeb574050668e5a240078f6e40337c3975d110)
Diffstat (limited to 'src/server/game/Server')
| -rw-r--r-- | src/server/game/Server/Packets/AuctionHousePackets.cpp | 9 | ||||
| -rw-r--r-- | src/server/game/Server/Packets/AuctionHousePackets.h | 8 |
2 files changed, 8 insertions, 9 deletions
diff --git a/src/server/game/Server/Packets/AuctionHousePackets.cpp b/src/server/game/Server/Packets/AuctionHousePackets.cpp index bb945b396dd..143ba11ddca 100644 --- a/src/server/game/Server/Packets/AuctionHousePackets.cpp +++ b/src/server/game/Server/Packets/AuctionHousePackets.cpp @@ -184,10 +184,10 @@ void WorldPackets::AuctionHouse::AuctionRemoveItem::Read() void WorldPackets::AuctionHouse::AuctionReplicateItems::Read() { _worldPacket >> Auctioneer; - _worldPacket >> Count; _worldPacket >> ChangeNumberGlobal; _worldPacket >> ChangeNumberCursor; _worldPacket >> ChangeNumberTombstone; + _worldPacket >> Count; } WorldPacket const* WorldPackets::AuctionHouse::AuctionListItemsResult::Write() @@ -312,12 +312,11 @@ WorldPacket const* WorldPackets::AuctionHouse::AuctionOutBidNotification::Write( WorldPacket const* WorldPackets::AuctionHouse::AuctionReplicateResponse::Write() { - //Todo order - _worldPacket << int32(ChangeNumberCursor); - _worldPacket << int32(ChangeNumberGlobal); + _worldPacket << int32(Result); _worldPacket << int32(DesiredDelay); + _worldPacket << int32(ChangeNumberGlobal); + _worldPacket << int32(ChangeNumberCursor); _worldPacket << int32(ChangeNumberTombstone); - _worldPacket << int32(Result); _worldPacket << int32(Items.size()); for (auto const& item : Items) diff --git a/src/server/game/Server/Packets/AuctionHousePackets.h b/src/server/game/Server/Packets/AuctionHousePackets.h index 1183c05da5b..e6aa6faac16 100644 --- a/src/server/game/Server/Packets/AuctionHousePackets.h +++ b/src/server/game/Server/Packets/AuctionHousePackets.h @@ -187,10 +187,10 @@ namespace WorldPackets void Read() override; ObjectGuid Auctioneer; - int32 Count = 0; - int32 ChangeNumberGlobal = 0; - int32 ChangeNumberCursor = 0; - int32 ChangeNumberTombstone = 0; + uint32 ChangeNumberGlobal = 0; + uint32 ChangeNumberCursor = 0; + uint32 ChangeNumberTombstone = 0; + uint32 Count = 0; }; class AuctionListPendingSales final : public ClientPacket |
