diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/Globals/ObjectMgr.cpp | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/src/server/game/Globals/ObjectMgr.cpp b/src/server/game/Globals/ObjectMgr.cpp index ea71887f472..1e846387d02 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() |