diff options
author | megamage <none@none> | 2008-11-01 16:53:16 -0500 |
---|---|---|
committer | megamage <none@none> | 2008-11-01 16:53:16 -0500 |
commit | 37d0fdd0cd4f6012c4a0c1f536a726fed9d4994e (patch) | |
tree | 96a7067d4e7fd21a1b26766f43f8bb122f00d7d3 /src/game/ObjectMgr.cpp | |
parent | d292b85d3849cf45028ee98220311af9b0ccafa0 (diff) |
[svn] Check creature combat reach when loading db. This should fix the bug that finding random contact point causes crash.
--HG--
branch : trunk
Diffstat (limited to 'src/game/ObjectMgr.cpp')
-rw-r--r-- | src/game/ObjectMgr.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/game/ObjectMgr.cpp b/src/game/ObjectMgr.cpp index 8a49d4dac0c..7513e8e3fa9 100644 --- a/src/game/ObjectMgr.cpp +++ b/src/game/ObjectMgr.cpp @@ -958,6 +958,20 @@ void ObjectMgr::LoadCreatureModelInfo() sLog.outString( ">> Loaded %u creature model based info", sCreatureModelStorage.RecordCount ); sLog.outString(); + + // check if combat_reach is valid + for(uint32 i = 1; i < sCreatureModelStorage.MaxEntry; ++i) + { + CreatureModelInfo const* mInfo = sCreatureModelStorage.LookupEntry<CreatureModelInfo>(i); + if(!mInfo) + continue; + + if(mInfo->combat_reach < 0.5f) + { + sLog.outErrorDb("Creature model (Entry: %u) has invalid combat reach (%f), setting it to 0.5", mInfo->modelid, mInfo->combat_reach); + const_cast<CreatureModelInfo*>(mInfo)->combat_reach = 0.5f; + } + } } void ObjectMgr::LoadCreatures() |