aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2022-06-24 21:37:06 +0200
committerShauren <shauren.trinity@gmail.com>2022-06-24 21:37:06 +0200
commitbb8a8cbc47a82d3d7d17da3485195ab37491372d (patch)
treea3fb22a6416dc6b7eb56b3dbb2c47f69cd9c229a /src
parent33c3ea1013787b15ff5eacc556bb0f0b41c8ec37 (diff)
Core/Players: Don't trigger quest objective and criteria updates for gold modifications before quest log and criteria progress are loaded
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Entities/Player/Player.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp
index 6da3d5e72ec..2e46042d19a 100644
--- a/src/server/game/Entities/Player/Player.cpp
+++ b/src/server/game/Entities/Player/Player.cpp
@@ -24477,9 +24477,15 @@ bool Player::ModifyMoney(int64 amount, bool sendError /*= true*/)
void Player::SetMoney(uint64 value)
{
- MoneyChanged(value);
+ bool loading = GetSession()->PlayerLoading();
+
+ if (!loading)
+ MoneyChanged(value);
+
SetUpdateFieldValue(m_values.ModifyValue(&Player::m_activePlayerData).ModifyValue(&UF::ActivePlayerData::Coinage), value);
- UpdateCriteria(CriteriaType::MostMoneyOwned);
+
+ if (!loading)
+ UpdateCriteria(CriteriaType::MostMoneyOwned);
}
bool Player::IsQuestRewarded(uint32 quest_id) const