diff --git a/src/server/game/Globals/ObjectMgr.cpp b/src/server/game/Globals/ObjectMgr.cpp index ea71887f47..1e846387d0 100644 --- a/src/server/game/Globals/ObjectMgr.cpp +++ b/src/server/game/Globals/ObjectMgr.cpp @@ -6381,12 +6381,22 @@ uint32 ObjectMgr::GenerateMailID() uint32 ObjectMgr::GeneratePetNumber() { - return ++_hiPetNumber; + if (_hiPetNumber >= 0xFFFFFFFE) + { + TC_LOG_ERROR("misc", "_hiPetNumber Id overflow!! Can't continue, shutting down server. "); + World::StopNow(ERROR_EXIT_CODE); + } + return _hiPetNumber++; } uint64 ObjectMgr::GenerateVoidStorageItemId() { - return ++_voidItemId; + if (_voidItemId >= uint64(0xFFFFFFFFFFFFFFFELL)) + { + TC_LOG_ERROR("misc", "_voidItemId overflow!! Can't continue, shutting down server. "); + World::StopNow(ERROR_EXIT_CODE); + } + return _voidItemId++; } uint64 ObjectMgr::GenerateCreatureSpawnId()