[8031] Move player update code to Map::Update. Author: Ambal

--HG--
branch : trunk
This commit is contained in:
megamage
2009-06-17 18:37:53 -05:00
parent a2f10c496f
commit fe7c616b2d
4 changed files with 9 additions and 15 deletions
+9
View File
@@ -649,6 +649,15 @@ void Map::RemoveUnitFromNotify(int32 slot)
void Map::Update(const uint32 &t_diff) void Map::Update(const uint32 &t_diff)
{ {
/// update players at tick
for(m_mapRefIter = m_mapRefManager.begin(); m_mapRefIter != m_mapRefManager.end(); ++m_mapRefIter)
{
Player* plr = m_mapRefIter->getSource();
if(plr && plr->IsInWorld())
plr->Update(t_diff);
}
/// update active cells around players and active objects
resetMarkedCells(); resetMarkedCells();
Trinity::ObjectUpdater updater(t_diff); Trinity::ObjectUpdater updater(t_diff);
-5
View File
@@ -251,11 +251,6 @@ MapManager::Update(uint32 diff)
if( !i_timer.Passed() ) if( !i_timer.Passed() )
return; return;
sWorld.RecordTimeDiff(NULL);
ObjectAccessor::Instance().UpdatePlayers(i_timer.GetCurrent());
sWorld.RecordTimeDiff("UpdatePlayers");
for(MapMapType::iterator iter=i_maps.begin(); iter != i_maps.end(); ++iter) for(MapMapType::iterator iter=i_maps.begin(); iter != i_maps.end(); ++iter)
{ {
checkAndCorrectGridStatesArray(); // debugging code, should be deleted some day checkAndCorrectGridStatesArray(); // debugging code, should be deleted some day
-9
View File
@@ -391,15 +391,6 @@ ObjectAccessor::Update(uint32 diff)
} }
} }
void
ObjectAccessor::UpdatePlayers(uint32 diff)
{
HashMapHolder<Player>::MapType& playerMap = HashMapHolder<Player>::GetContainer();
for(HashMapHolder<Player>::MapType::iterator iter = playerMap.begin(); iter != playerMap.end(); ++iter)
if(iter->second->IsInWorld())
iter->second->Update(diff);
}
void void
ObjectAccessor::WorldObjectChangeAccumulator::Visit(PlayerMapType &m) ObjectAccessor::WorldObjectChangeAccumulator::Visit(PlayerMapType &m)
{ {
-1
View File
@@ -201,7 +201,6 @@ class MANGOS_DLL_DECL ObjectAccessor : public MaNGOS::Singleton<ObjectAccessor,
} }
void Update(uint32 diff); void Update(uint32 diff);
void UpdatePlayers(uint32 diff);
Corpse* GetCorpseForPlayerGUID(uint64 guid); Corpse* GetCorpseForPlayerGUID(uint64 guid);
void RemoveCorpse(Corpse *corpse); void RemoveCorpse(Corpse *corpse);