diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index dcf5df0bcf..0736b3bc01 100644 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -14036,10 +14036,17 @@ bool Player::CanRewardQuest(Quest const* quest, bool msg) // dungeon finder quests cannot be rewarded when hit weekly currency limit if (quest->IsDFQuest()) + { for (uint8 i = 0; i < QUEST_REWARD_CURRENCY_COUNT; i++) + { if (CurrencyTypesEntry const* currency = sCurrencyTypesStore.LookupEntry(quest->RewardCurrencyId[i])) - if (GetCurrencyOnWeek(quest->RewardCurrencyId[i], false) == GetCurrencyWeekCap(currency)) + { + uint32 weekCap = GetCurrencyWeekCap(currency); + if (weekCap > 0 && GetCurrencyOnWeek(quest->RewardCurrencyId[i], false) >= weekCap) return false; + } + } + } return true; }