diff options
-rwxr-xr-x | src/server/game/Loot/LootMgr.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/server/game/Loot/LootMgr.cpp b/src/server/game/Loot/LootMgr.cpp index deb24cb9f31..c8063ccb818 100755 --- a/src/server/game/Loot/LootMgr.cpp +++ b/src/server/game/Loot/LootMgr.cpp @@ -1075,7 +1075,9 @@ void LootTemplate::LootGroup::Process(Loot& loot, uint16 lootMode) const if (item == NULL && !EqualPossibleDrops.empty()) // If nothing selected yet - an item is taken from equal-chanced part { itemSource = 2; - item = const_cast<LootStoreItem*>(&SelectRandomContainerElement(EqualPossibleDrops)); + itr = EqualPossibleDrops.begin(); + std::advance(itr, irand(0, EqualPossibleDrops.size()-1)); + item = &*itr; } // finish rolling |