diff options
Diffstat (limited to 'src')
-rwxr-xr-x | src/server/game/Globals/ObjectMgr.h | 10 | ||||
-rwxr-xr-x | src/server/game/Handlers/ItemHandler.cpp | 8 |
2 files changed, 14 insertions, 4 deletions
diff --git a/src/server/game/Globals/ObjectMgr.h b/src/server/game/Globals/ObjectMgr.h index 742259aa536..b1ee342a0e7 100755 --- a/src/server/game/Globals/ObjectMgr.h +++ b/src/server/game/Globals/ObjectMgr.h @@ -1158,6 +1158,16 @@ class ObjectMgr void LoadHotfixData(); HotfixData const& GetHotfixData() const { return _hotfixData; } + time_t GetHotfixDate(uint32 entry, uint32 type) const + { + time_t ret = 0; + for (HotfixData::const_iterator itr = _hotfixData.begin(); itr != _hotfixData.end(); ++itr) + if (itr->Entry == entry && itr->Type == type) + if (itr->Timestamp > ret) + ret = itr->Timestamp; + + return ret; + } private: // first free id for selected id type diff --git a/src/server/game/Handlers/ItemHandler.cpp b/src/server/game/Handlers/ItemHandler.cpp index faa24abdb65..88d2d6afc53 100755 --- a/src/server/game/Handlers/ItemHandler.cpp +++ b/src/server/game/Handlers/ItemHandler.cpp @@ -285,14 +285,14 @@ void WorldSession::SendItemDb2Reply(uint32 entry) { data << uint32(-1); // entry data << uint32(DB2_REPLY_ITEM); - data << uint32(1322512289); // hotfix date + data << uint32(time(NULL)); // hotfix date data << uint32(0); // size of next block return; } data << uint32(entry); data << uint32(DB2_REPLY_ITEM); - data << uint32(1322512290); // hotfix date + data << uint32(sObjectMgr->GetHotfixDate(entry, DB2_REPLY_ITEM)); ByteBuffer buff; buff << uint32(entry); @@ -318,14 +318,14 @@ void WorldSession::SendItemSparseDb2Reply(uint32 entry) { data << uint32(-1); // entry data << uint32(DB2_REPLY_SPARSE); - data << uint32(1322512289); // hotfix date + data << uint32(time(NULL)); // hotfix date data << uint32(0); // size of next block return; } data << uint32(entry); data << uint32(DB2_REPLY_SPARSE); - data << uint32(1322512290); // hotfix date + data << uint32(sObjectMgr->GetHotfixDate(entry, DB2_REPLY_SPARSE)); ByteBuffer buff; buff << uint32(entry); |