fix: do not start the local countdown for equipped items with expirestop (#1771)

This commit is contained in:
mimus-assa 2026-07-25 07:18:57 -06:00 committed by GitHub
parent ef80e7f5dc
commit 275abf6362
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -470,7 +470,9 @@ void LocalPlayer::setInventoryItem(const Otc::InventorySlot inventory, const Ite
if (item && g_game.getFeature(Otc::GameThingClock) && item->getDurationTime() > 0
&& item->getClothSlot() == static_cast<int>(inventory)){
item->setDecaying(true);
// expirestop-only items (e.g. toggled-off magic light wand) are paused
// server-side, so their countdown must not tick client-side either
item->setDecaying(item->hasExpire() || item->hasClockExpire());
}
callLuaField("onInventoryChange", inventory, item, oldItem);