diff options
-rw-r--r-- | src/server/game/Handlers/LootHandler.cpp | 4 | ||||
-rw-r--r-- | src/server/game/Server/Packets/LootPackets.h | 4 |
2 files changed, 5 insertions, 3 deletions
diff --git a/src/server/game/Handlers/LootHandler.cpp b/src/server/game/Handlers/LootHandler.cpp index 695caeb7282..c048c4887d0 100644 --- a/src/server/game/Handlers/LootHandler.cpp +++ b/src/server/game/Handlers/LootHandler.cpp @@ -234,8 +234,10 @@ void WorldSession::HandleLootOpcode(WorldPackets::Loot::LootUnit& packet) std::vector<Creature*> corpses; if (aeLootEnabled) { - Trinity::CreatureListSearcher<AELootCreatureCheck> searcher(_player, corpses, check); + Trinity::CreatureListSearcher searcher(_player, corpses, check); Cell::VisitGridObjects(_player, searcher, AELootCreatureCheck::LootDistance); + if (corpses.size() > 49) + corpses.resize(49); // lootTarget is 50th, not in corpses vector } if (!corpses.empty()) diff --git a/src/server/game/Server/Packets/LootPackets.h b/src/server/game/Server/Packets/LootPackets.h index d8c5608cdda..1065d4905be 100644 --- a/src/server/game/Server/Packets/LootPackets.h +++ b/src/server/game/Server/Packets/LootPackets.h @@ -92,7 +92,7 @@ namespace WorldPackets void Read() override; - Array<LootRequest, 1000> Loot; + Array<LootRequest, 100> Loot; bool IsSoftInteract = false; }; @@ -103,7 +103,7 @@ namespace WorldPackets void Read() override; - Array<LootRequest, 1000> Loot; + Array<LootRequest, 100> Loot; ObjectGuid Target; }; |