From b4f6bee92cd03d67a78c433f2e680148c7ec7710 Mon Sep 17 00:00:00 2001 From: Kelno Date: Sun, 3 Dec 2023 07:52:54 -0500 Subject: [PATCH] Core/Items: Fixed soulbound tradeable items not being properly update once every second (#29416) In the current code they were updated only if the difftime went above 1 second. --- src/server/game/Entities/Player/Player.cpp | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index 309e873eda..544f6d021f 100644 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -990,13 +990,12 @@ void Player::Update(uint32 p_time) Unit::AIUpdateTick(p_time); - // Update items that have just a limited lifetime + // Once per second, update items that have just a limited lifetime if (now > m_Last_tick) + { UpdateItemDuration(uint32(now - m_Last_tick)); - - // check every second - if (now > m_Last_tick + 1) UpdateSoulboundTradeItems(); + } // If mute expired, remove it from the DB if (GetSession()->m_muteTime && GetSession()->m_muteTime < now)