From 8c758f80215202413876be3ac5374b585f79914e Mon Sep 17 00:00:00 2001 From: sevi Date: Fri, 23 Jan 2026 09:18:45 +0100 Subject: [PATCH] Core/Player: Fix DF quest reward weekly cap check for uncapped currencies (#457) * Core/Player: Fix DF quest reward weekly cap check for uncapped currencies * Core/Player: adjust brackets --- src/server/game/Entities/Player/Player.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) 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; }