diff options
author | Shauren <shauren.trinity@gmail.com> | 2022-09-18 16:33:38 +0200 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2022-09-18 16:33:38 +0200 |
commit | 8c20f620d7b070b13b40803095e5fa97f9349512 (patch) | |
tree | 0e5d718500cf8139945234cb1f36a53986e05dea /src/server/game/Loot/Loot.cpp | |
parent | c00e2e4851498aa04ac1d8ff13a0759b245df72b (diff) |
Core/Loot: Move loot generation out of Player::SendLoot
Diffstat (limited to 'src/server/game/Loot/Loot.cpp')
-rw-r--r-- | src/server/game/Loot/Loot.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/server/game/Loot/Loot.cpp b/src/server/game/Loot/Loot.cpp index 3c5e976245e..62d86b7ce0c 100644 --- a/src/server/game/Loot/Loot.cpp +++ b/src/server/game/Loot/Loot.cpp @@ -662,7 +662,10 @@ void Loot::NotifyItemRemoved(uint8 lootListId, Map const* map) { LootItem const& item = items[lootListId]; if (item.GetAllowedLooters().find(*itr) == item.GetAllowedLooters().end()) + { + ++itr; continue; + } if (Player* player = ObjectAccessor::GetPlayer(map, *itr)) { @@ -769,7 +772,8 @@ bool Loot::FillLoot(uint32 lootId, LootStore const& store, Player* lootOwner, bo Group const* group = lootOwner->GetGroup(); if (!personal && group) { - roundRobinPlayer = lootOwner->GetGUID(); + if (loot_type == LOOT_CORPSE) + roundRobinPlayer = lootOwner->GetGUID(); for (GroupReference const* itr = group->GetFirstMember(); itr != nullptr; itr = itr->next()) if (Player const* player = itr->GetSource()) // should actually be looted object instead of lootOwner but looter has to be really close so doesnt really matter |