diff options
author | Loic Blot <loic.blot@unix-experience.fr> | 2015-03-04 12:19:26 +0100 |
---|---|---|
committer | Loic Blot <loic.blot@unix-experience.fr> | 2015-03-04 12:19:26 +0100 |
commit | 40bf1d7b5f2a190ae89885c9ea99f52c476ea6be (patch) | |
tree | a8547067308dd42775ee54f3aeed7009a7559d95 /src/server.cpp | |
parent | 7f8f9785d7e9e120a6708d2f51e32dfef3e50c19 (diff) | |
download | minetest-40bf1d7b5f2a190ae89885c9ea99f52c476ea6be.tar.gz minetest-40bf1d7b5f2a190ae89885c9ea99f52c476ea6be.tar.bz2 minetest-40bf1d7b5f2a190ae89885c9ea99f52c476ea6be.zip |
Send Position packet on event, don't check it at each AsyncRunStep.
* This permit to cleanup the player checking loop
Diffstat (limited to 'src/server.cpp')
-rw-r--r-- | src/server.cpp | 27 |
1 files changed, 1 insertions, 26 deletions
diff --git a/src/server.cpp b/src/server.cpp index d2af9f5ac..625ab2231 100644 --- a/src/server.cpp +++ b/src/server.cpp @@ -581,32 +581,6 @@ void Server::AsyncRunStep(bool initial_step) Do background stuff */ - /* - Handle players - */ - { - JMutexAutoLock lock(m_env_mutex); - - std::list<u16> clientids = m_clients.getClientIDs(); - - ScopeProfiler sp(g_profiler, "Server: handle players"); - - for(std::list<u16>::iterator - i = clientids.begin(); - i != clientids.end(); ++i) - { - PlayerSAO *playersao = getPlayerSAO(*i); - if(playersao == NULL) - continue; - - - if(playersao->m_moved) { - SendMovePlayer(*i); - playersao->m_moved = false; - } - } - } - /* Transform liquids */ m_liquid_transform_timer += dtime; if(m_liquid_transform_timer >= m_liquid_transform_every) @@ -2590,6 +2564,7 @@ void Server::RespawnPlayer(u16 peer_id) bool repositioned = m_script->on_respawnplayer(playersao); if(!repositioned){ v3f pos = findSpawnPos(m_env->getServerMap()); + // setPos will send the new position to client playersao->setPos(pos); } } |