Core/Items: Implemented CreateTime item field and changed refund/soulbound trade timers to also count time offline

This commit is contained in:
Shauren
2024-04-12 00:18:20 +02:00
parent 8c274a8e8d
commit 69da702b93
10 changed files with 115 additions and 128 deletions

View File

@@ -134,7 +134,7 @@ void WorldSession::moveItems(Item* myItems[], Item* hisItems[])
}
// adjust time (depends on /played)
if (myItems[i]->IsBOPTradeable())
if (*myItems[i]->m_itemData->CreatePlayedTime)
myItems[i]->SetCreatePlayedTime(trader->GetTotalPlayedTime() - (_player->GetTotalPlayedTime() - myItems[i]->m_itemData->CreatePlayedTime));
// store
trader->MoveItemToInventory(traderDst, myItems[i], true, true);
@@ -152,7 +152,7 @@ void WorldSession::moveItems(Item* myItems[], Item* hisItems[])
}
// adjust time (depends on /played)
if (hisItems[i]->IsBOPTradeable())
if (*hisItems[i]->m_itemData->CreatePlayedTime)
hisItems[i]->SetCreatePlayedTime(_player->GetTotalPlayedTime() - (trader->GetTotalPlayedTime() - hisItems[i]->m_itemData->CreatePlayedTime));
// store
_player->MoveItemToInventory(playerDst, hisItems[i], true, true);