From e74e5345eaa2dca3b86720c5c38caffb029bedc7 Mon Sep 17 00:00:00 2001 From: Jhobean Date: Wed, 22 Oct 2025 09:12:29 -0400 Subject: [PATCH] Fix item tooltip and timers when they are moved (Issue 1498 & 1500) --- Changelog.txt | 4 ++++ src/game/CObjBase.cpp | 6 +++++- src/game/clients/CClientEvent.cpp | 1 + 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/Changelog.txt b/Changelog.txt index 796b515e0..cb2706e10 100644 --- a/Changelog.txt +++ b/Changelog.txt @@ -4062,3 +4062,7 @@ When setting a property like MORE to the a spell or skill defname, trying to rea 30-09-2025, Mulambo - Changed: Login rejection (packet `0x82`) is now sent to all clients trying to log in (used to be only to clients, that Sphere could identify). + +22-10-2025, Jhobean +- Fixed: Full Tooltip now update each time you move an item manually (Issue #1500) +- Fixed: On some situation when item was move or add on ground by script, decay flag and timer was not set. (Issue #1498) diff --git a/src/game/CObjBase.cpp b/src/game/CObjBase.cpp index 6c928509a..ad6275c35 100644 --- a/src/game/CObjBase.cpp +++ b/src/game/CObjBase.cpp @@ -2464,7 +2464,11 @@ bool CObjBase::r_Verb( CScript & s, CTextConsole * pSrc ) // Execute command fro if (pt.IsValidPoint()) { RemoveFromView(); - MoveTo(pt); + CItem* pItem = dynamic_cast(this); + if (pItem) + pItem->MoveToDecay(pt, pItem->GetDecayTime()); + else + MoveTo(pt); Update(); } else diff --git a/src/game/clients/CClientEvent.cpp b/src/game/clients/CClientEvent.cpp index c323aca24..c0e70f04f 100644 --- a/src/game/clients/CClientEvent.cpp +++ b/src/game/clients/CClientEvent.cpp @@ -589,6 +589,7 @@ void CClient::Event_Item_Drop( CUID uidItem, CPointMap pt, CUID uidOn, uchar gri m_pChar->UpdateDrag( pItem, nullptr, &pt ); m_pChar->ItemDrop( pItem, pt ); } + pItem->ResendTooltip(true); }