diff options
author | Shauren <shauren.trinity@gmail.com> | 2024-11-06 12:17:49 +0100 |
---|---|---|
committer | Ovahlord <dreadkiller@gmx.de> | 2025-04-06 18:33:36 +0200 |
commit | c460d2e76d27bbd9d911948bceee388341e2a046 (patch) | |
tree | 1439fa07d36bc0035ed5f288765abedb55621c69 | |
parent | ce6f800fb9f2b545381a32ddb99cb675acb1e87c (diff) |
Core/PacketIO: Named a bunch of unknown/unused fields
(cherry picked from commit 806611075659ddde60f3003763e442a46d70f993)
# Conflicts:
# src/server/game/Achievements/CriteriaHandler.cpp
# src/server/game/Conditions/ConditionMgr.cpp
# src/server/game/DungeonFinding/LFGMgr.cpp
# src/server/game/Entities/AreaTrigger/AreaTrigger.cpp
# src/server/game/Entities/GameObject/GameObject.cpp
# src/server/game/Entities/Item/Item.cpp
# src/server/game/Entities/Item/ItemBonusMgr.cpp
# src/server/game/Entities/Object/Updates/UpdateFields.cpp
# src/server/game/Entities/Object/Updates/UpdateFields.h
# src/server/game/Entities/Player/Player.cpp
# src/server/game/Handlers/CharacterHandler.cpp
# src/server/game/Handlers/LFGHandler.cpp
# src/server/game/Server/Packets/BattlegroundPackets.cpp
# src/server/game/Server/Packets/BattlegroundPackets.h
# src/server/game/Server/Packets/CharacterPackets.cpp
# src/server/game/Server/Packets/CharacterPackets.h
# src/server/game/Server/Packets/ItemPackets.cpp
# src/server/game/Server/Packets/ItemPackets.h
# src/server/game/Server/Packets/LFGPackets.cpp
# src/server/game/Server/Packets/LFGPackets.h
# src/server/game/Server/Packets/PartyPackets.cpp
# src/server/game/Server/Packets/PartyPackets.h
# src/server/game/Server/Packets/QueryPackets.cpp
# src/server/game/Server/Packets/QueryPackets.h
# src/server/game/Server/Packets/SystemPackets.cpp
# src/server/game/Server/Packets/SystemPackets.h
# src/server/scripts/Commands/cs_lookup.cpp
-rw-r--r-- | src/server/game/AuctionHouse/AuctionHouseMgr.cpp | 16 | ||||
-rw-r--r-- | src/server/game/Server/Packets/AuctionHousePackets.cpp | 20 | ||||
-rw-r--r-- | src/server/game/Server/Packets/AuctionHousePackets.h | 4 |
3 files changed, 20 insertions, 20 deletions
diff --git a/src/server/game/AuctionHouse/AuctionHouseMgr.cpp b/src/server/game/AuctionHouse/AuctionHouseMgr.cpp index 616d71c2877..74308cd6b1e 100644 --- a/src/server/game/AuctionHouse/AuctionHouseMgr.cpp +++ b/src/server/game/AuctionHouse/AuctionHouseMgr.cpp @@ -50,7 +50,7 @@ enum eAuctionHouse AuctionsBucketKey::AuctionsBucketKey(WorldPackets::AuctionHouse::AuctionBucketKey const& key) : ItemId(key.ItemID), ItemLevel(key.ItemLevel), BattlePetSpeciesId(key.BattlePetSpeciesID.value_or(0)), - SuffixItemNameDescriptionId(key.SuffixItemNameDescriptionID.value_or(0)) + SuffixItemNameDescriptionId(key.ItemSuffix.value_or(0)) { } @@ -109,6 +109,10 @@ void AuctionsBucketData::BuildBucketInfo(WorldPackets::AuctionHouse::BucketInfo* bucketInfo->MaxBattlePetQuality = bucketInfo->MaxBattlePetQuality ? std::max(*bucketInfo->MaxBattlePetQuality, quality) : quality; bucketInfo->MaxBattlePetLevel = bucketInfo->MaxBattlePetLevel ? std::max(*bucketInfo->MaxBattlePetLevel, level) : level; bucketInfo->BattlePetBreedID = breedId; + if (!bucketInfo->BattlePetLevelMask) + bucketInfo->BattlePetLevelMask = 0; + + *bucketInfo->BattlePetLevelMask |= 1 << (level - 1); } } @@ -847,13 +851,11 @@ AuctionPosting* AuctionHouseObject::GetAuction(uint32 auctionId) void AuctionHouseObject::AddAuction(CharacterDatabaseTransaction trans, AuctionPosting auction) { AuctionsBucketKey key = AuctionsBucketKey::ForItem(auction.Items[0]); - AuctionsBucketData* bucket; - auto bucketItr = _buckets.find(key); - if (bucketItr == _buckets.end()) + auto [bucketItr, isNew] = _buckets.try_emplace(key); + AuctionsBucketData* bucket = &bucketItr->second; + if (isNew) { // we don't have any item for this key yet, create new bucket - bucketItr = _buckets.emplace(std::piecewise_construct, std::forward_as_tuple(key), std::forward_as_tuple()).first; - bucket = &bucketItr->second; bucket->Key = key; ItemTemplate const* itemTemplate = auction.Items[0]->GetTemplate(); @@ -900,8 +902,6 @@ void AuctionHouseObject::AddAuction(CharacterDatabaseTransaction trans, AuctionP bucket->FullName[locale] = wstrCaseAccentInsensitiveParse(utf16name, locale); } } - else - bucket = &bucketItr->second; // update cache fields uint64 priceToDisplay = auction.BuyoutOrUnitPrice ? auction.BuyoutOrUnitPrice : auction.BidAmount; diff --git a/src/server/game/Server/Packets/AuctionHousePackets.cpp b/src/server/game/Server/Packets/AuctionHousePackets.cpp index 9b5bc832e84..7eec7ad4077 100644 --- a/src/server/game/Server/Packets/AuctionHousePackets.cpp +++ b/src/server/game/Server/Packets/AuctionHousePackets.cpp @@ -34,7 +34,7 @@ AuctionBucketKey& AuctionBucketKey::operator=(AuctionsBucketKey const& key) BattlePetSpeciesID = key.BattlePetSpeciesId; if (key.SuffixItemNameDescriptionId) - SuffixItemNameDescriptionID = key.SuffixItemNameDescriptionId; + ItemSuffix = key.SuffixItemNameDescriptionId; return *this; } @@ -50,13 +50,13 @@ ByteBuffer& operator>>(ByteBuffer& data, AuctionBucketKey& itemKey) itemKey.ItemLevel = data.ReadBits(11); if (data.ReadBit()) - itemKey.SuffixItemNameDescriptionID.emplace(); + itemKey.ItemSuffix.emplace(); if (itemKey.BattlePetSpeciesID) data >> *itemKey.BattlePetSpeciesID; - if (itemKey.SuffixItemNameDescriptionID) - data >> *itemKey.SuffixItemNameDescriptionID; + if (itemKey.ItemSuffix) + data >> *itemKey.ItemSuffix; return data; } @@ -66,14 +66,14 @@ ByteBuffer& operator<<(ByteBuffer& data, AuctionBucketKey const& itemKey) data.WriteBits(itemKey.ItemID, 20); data.WriteBit(itemKey.BattlePetSpeciesID.has_value()); data.WriteBits(itemKey.ItemLevel, 11); - data.WriteBit(itemKey.SuffixItemNameDescriptionID.has_value()); + data.WriteBit(itemKey.ItemSuffix.has_value()); data.FlushBits(); if (itemKey.BattlePetSpeciesID) data << uint16(*itemKey.BattlePetSpeciesID); - if (itemKey.SuffixItemNameDescriptionID) - data << uint16(*itemKey.SuffixItemNameDescriptionID); + if (itemKey.ItemSuffix) + data << uint16(*itemKey.ItemSuffix); return data; } @@ -164,7 +164,7 @@ ByteBuffer& operator<<(ByteBuffer& data, BucketInfo const& bucketInfo) data.WriteBit(bucketInfo.MaxBattlePetQuality.has_value()); data.WriteBit(bucketInfo.MaxBattlePetLevel.has_value()); data.WriteBit(bucketInfo.BattlePetBreedID.has_value()); - data.WriteBit(bucketInfo.Unk901_1.has_value()); + data.WriteBit(bucketInfo.BattlePetLevelMask.has_value()); data.WriteBit(bucketInfo.ContainsOwnerItem); data.WriteBit(bucketInfo.ContainsOnlyCollectedAppearances); data.FlushBits(); @@ -178,8 +178,8 @@ ByteBuffer& operator<<(ByteBuffer& data, BucketInfo const& bucketInfo) if (bucketInfo.BattlePetBreedID) data << uint8(*bucketInfo.BattlePetBreedID); - if (bucketInfo.Unk901_1) - data << uint32(*bucketInfo.Unk901_1); + if (bucketInfo.BattlePetLevelMask) + data << uint32(*bucketInfo.BattlePetLevelMask); return data; } diff --git a/src/server/game/Server/Packets/AuctionHousePackets.h b/src/server/game/Server/Packets/AuctionHousePackets.h index e132ca777b5..d44111291ca 100644 --- a/src/server/game/Server/Packets/AuctionHousePackets.h +++ b/src/server/game/Server/Packets/AuctionHousePackets.h @@ -45,7 +45,7 @@ namespace WorldPackets uint32 ItemID = 0; uint16 ItemLevel = 0; Optional<uint16> BattlePetSpeciesID; - Optional<uint16> SuffixItemNameDescriptionID; + Optional<uint16> ItemSuffix; }; struct AuctionListFilterSubClass @@ -100,7 +100,7 @@ namespace WorldPackets Optional<uint8> MaxBattlePetQuality; Optional<uint8> MaxBattlePetLevel; Optional<uint8> BattlePetBreedID; - Optional<uint32> Unk901_1; + Optional<uint32> BattlePetLevelMask; bool ContainsOwnerItem = false; bool ContainsOnlyCollectedAppearances = false; }; |