diff options
author | Sebastian Valle <s.v.h21@hotmail.com> | 2013-10-29 13:13:37 -0500 |
---|---|---|
committer | Sebastian Valle <s.v.h21@hotmail.com> | 2013-10-29 13:13:37 -0500 |
commit | bb057ae40be2733f3f582a93e585b8bb67cf1520 (patch) | |
tree | 76a7f9727dc33d068b3c2433189bee42a7edcde1 /src/server/game/Globals/ObjectMgr.cpp | |
parent | 4ce12dc481323c11b4830d06f8080412d855cc64 (diff) | |
parent | 3d5a317b755f4b6eb2d9a29fd7d9291415dfa6eb (diff) |
Merge branch 'master' of github.com:TrinityCore/TrinityCore into mmaps_rw
Conflicts:
src/server/collision/Management/MMapManager.h
Diffstat (limited to 'src/server/game/Globals/ObjectMgr.cpp')
-rw-r--r-- | src/server/game/Globals/ObjectMgr.cpp | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/src/server/game/Globals/ObjectMgr.cpp b/src/server/game/Globals/ObjectMgr.cpp index 2f309c07cce..d515a9c20e9 100644 --- a/src/server/game/Globals/ObjectMgr.cpp +++ b/src/server/game/Globals/ObjectMgr.cpp @@ -804,6 +804,18 @@ void ObjectMgr::CheckCreatureTemplate(CreatureTemplate const* cInfo) if ((cInfo->npcflag & UNIT_NPC_FLAG_TRAINER) && cInfo->trainer_type >= MAX_TRAINER_TYPE) TC_LOG_ERROR(LOG_FILTER_SQL, "Creature (Entry: %u) has wrong trainer type %u.", cInfo->Entry, cInfo->trainer_type); + if (cInfo->speed_walk == 0.0f) + { + TC_LOG_ERROR(LOG_FILTER_SQL, "Creature (Entry: %u) has wrong value (%f) in speed_walk, set to 1.", cInfo->Entry, cInfo->speed_walk); + const_cast<CreatureTemplate*>(cInfo)->speed_walk = 1.0f; + } + + if (cInfo->speed_run == 0.0f) + { + TC_LOG_ERROR(LOG_FILTER_SQL, "Creature (Entry: %u) has wrong value (%f) in speed_run, set to 1.14286.", cInfo->Entry, cInfo->speed_run); + const_cast<CreatureTemplate*>(cInfo)->speed_run = 1.14286f; + } + if (cInfo->type && !sCreatureTypeStore.LookupEntry(cInfo->type)) { TC_LOG_ERROR(LOG_FILTER_SQL, "Creature (Entry: %u) has invalid creature type (%u) in `type`.", cInfo->Entry, cInfo->type); @@ -7796,6 +7808,25 @@ GameTele const* ObjectMgr::GetGameTele(const std::string& name) const return alt; } +GameTele const* ObjectMgr::GetGameTeleExactName(const std::string& name) const +{ + // explicit name case + std::wstring wname; + if (!Utf8toWStr(name, wname)) + return NULL; + + // converting string that we try to find to lower case + wstrToLower(wname); + + for (GameTeleContainer::const_iterator itr = _gameTeleStore.begin(); itr != _gameTeleStore.end(); ++itr) + { + if (itr->second.wnameLow == wname) + return &itr->second; + } + + return NULL; +} + bool ObjectMgr::AddGameTele(GameTele& tele) { // find max id |