diff options
author | Shauren <shauren.trinity@gmail.com> | 2023-12-30 15:45:37 +0100 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2023-12-30 15:45:37 +0100 |
commit | 4dce6ab228c54319032b346d2d791262eac3d9cd (patch) | |
tree | 27049cf934572481a3f661461ee2add586313df2 /src/server/game/Loot/Loot.cpp | |
parent | f26a93a8c1bd0a7c3c3c3362f29ec809fb96a68b (diff) |
Core/Quests: Implemented QUEST_OBJECTIVE_FLAG_2_QUEST_BOUND_ITEM that makes required items not be stored in inventory
Diffstat (limited to 'src/server/game/Loot/Loot.cpp')
-rw-r--r-- | src/server/game/Loot/Loot.cpp | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/src/server/game/Loot/Loot.cpp b/src/server/game/Loot/Loot.cpp index c005aba2ccb..2cd94891236 100644 --- a/src/server/game/Loot/Loot.cpp +++ b/src/server/game/Loot/Loot.cpp @@ -888,9 +888,13 @@ bool Loot::AutoStore(Player* player, uint8 bag, uint8 slot, bool broadcast, bool --unlootedCount; - Item* pItem = player->StoreNewItem(dest, lootItem->itemid, true, lootItem->randomBonusListId, GuidSet(), lootItem->context, &lootItem->BonusListIDs); - player->SendNewItem(pItem, lootItem->count, false, createdByPlayer, broadcast); - player->ApplyItemLootedSpell(pItem, true); + if (Item* pItem = player->StoreNewItem(dest, lootItem->itemid, true, lootItem->randomBonusListId, GuidSet(), lootItem->context, &lootItem->BonusListIDs)) + { + player->SendNewItem(pItem, lootItem->count, false, createdByPlayer, broadcast, GetDungeonEncounterId()); + player->ApplyItemLootedSpell(pItem, true); + } + else + player->ApplyItemLootedSpell(sObjectMgr->GetItemTemplate(lootItem->itemid)); } return allLooted; |