From bc3afedbacb9bc9b407431baa9f28de0dc58be33 Mon Sep 17 00:00:00 2001 From: Ovahlord Date: Sun, 16 Jun 2024 17:45:31 +0200 Subject: Core/Quests: updated quest reward money calculation for 4.4.0 --- src/server/game/Quests/QuestDef.cpp | 21 +++------------------ 1 file changed, 3 insertions(+), 18 deletions(-) (limited to 'src/server/game/Quests/QuestDef.cpp') diff --git a/src/server/game/Quests/QuestDef.cpp b/src/server/game/Quests/QuestDef.cpp index 607db09ee08..1b70a3704f5 100644 --- a/src/server/game/Quests/QuestDef.cpp +++ b/src/server/game/Quests/QuestDef.cpp @@ -425,29 +425,14 @@ uint32 Quest::XPValue(Player const* player, uint32 questLevel, int32 unscaledQue return true; } -uint32 Quest::MoneyValue(Player const* player) const +uint32 Quest::GetMoneyReward(Player const* player) const { - if (QuestMoneyRewardEntry const* money = sQuestMoneyRewardStore.LookupEntry(player->GetQuestLevel(this))) + if (QuestMoneyRewardEntry const* money = sQuestMoneyRewardStore.LookupEntry(player ? GetQuestLevelForPlayer(player) : _level)) return money->Difficulty[GetRewMoneyDifficulty()] * GetMoneyMultiplier(); else return 0; } -uint32 Quest::MaxMoneyValue() const -{ - uint32 value = 0; - if (Optional questLevels = sDB2Manager.GetContentTuningData(0, 0)) - if (QuestMoneyRewardEntry const* money = sQuestMoneyRewardStore.LookupEntry(questLevels->MaxLevel)) - value = money->Difficulty[GetRewMoneyDifficulty()] * GetMoneyMultiplier(); - - return value; -} - -uint32 Quest::GetMaxMoneyReward() const -{ - return MaxMoneyValue() * sWorld->getRate(RATE_MONEY_QUEST); -} - Optional Quest::GetQuestTag() const { if (QuestInfoEntry const* questInfo = sQuestInfoStore.LookupEntry(GetQuestInfoID())) @@ -664,7 +649,7 @@ WorldPacket Quest::BuildQueryData(LocaleConstant loc, Player* player) const response.Info.RewardXPMultiplier = GetXPMultiplier(); if (!HasFlag(QUEST_FLAGS_HIDE_REWARD)) - response.Info.RewardMoney = player ? player->GetQuestMoneyReward(this) : GetMaxMoneyReward(); + response.Info.RewardMoney = GetMoneyReward(player); response.Info.RewardMoneyDifficulty = GetRewMoneyDifficulty(); response.Info.RewardMoneyMultiplier = GetMoneyMultiplier(); -- cgit v1.2.3