diff options
author | Perttu Ahola <celeron55@gmail.com> | 2011-04-10 23:29:36 +0300 |
---|---|---|
committer | Perttu Ahola <celeron55@gmail.com> | 2011-04-10 23:29:36 +0300 |
commit | bb39795ab223ffe815d88ec0d0f9dc9a993bef67 (patch) | |
tree | ff69273a655906fb89bc8f4bb67613bc5fb82331 | |
parent | 9d5ccafbb0fd79940a904b1754e820a90681facb (diff) | |
download | minetest-bb39795ab223ffe815d88ec0d0f9dc9a993bef67.tar.gz minetest-bb39795ab223ffe815d88ec0d0f9dc9a993bef67.tar.bz2 minetest-bb39795ab223ffe815d88ec0d0f9dc9a993bef67.zip |
fixed the object update interval thingy
-rw-r--r-- | src/environment.cpp | 4 | ||||
-rw-r--r-- | src/serverobject.cpp | 4 | ||||
-rw-r--r-- | src/utility.h | 7 |
3 files changed, 8 insertions, 7 deletions
diff --git a/src/environment.cpp b/src/environment.cpp index bed47fd40..3f95ed9f9 100644 --- a/src/environment.cpp +++ b/src/environment.cpp @@ -380,6 +380,8 @@ void ServerEnvironment::deSerializePlayers(const std::string &savedir) void ServerEnvironment::step(float dtime) { DSTACK(__FUNCTION_NAME); + + //TimeTaker timer("ServerEnv step"); // Get some settings //bool free_move = g_settings.getBool("free_move"); @@ -451,6 +453,8 @@ void ServerEnvironment::step(float dtime) if(m_object_management_interval.step(dtime, 0.5)) { + //TimeTaker timer("ServerEnv object management"); + /* Remove objects that satisfy (m_removed && m_known_by_count==0) */ diff --git a/src/serverobject.cpp b/src/serverobject.cpp index b6015a477..87017c390 100644 --- a/src/serverobject.cpp +++ b/src/serverobject.cpp @@ -172,7 +172,7 @@ void ItemSAO::step(float dtime, Queue<ActiveObjectMessage> &messages, assert(m_env); const float interval = 0.2; - if(m_move_interval.step(dtime, interval)) + if(m_move_interval.step(dtime, interval)==false) return; dtime = interval; @@ -312,7 +312,7 @@ void RatSAO::step(float dtime, Queue<ActiveObjectMessage> &messages, if(m_is_active == false) { - if(m_inactive_interval.step(dtime, 0.5)) + if(m_inactive_interval.step(dtime, 0.5)==false) return; } diff --git a/src/utility.h b/src/utility.h index 19946354c..50bbe1496 100644 --- a/src/utility.h +++ b/src/utility.h @@ -2033,12 +2033,9 @@ public: { m_accumulator += dtime; if(m_accumulator < wanted_interval) - { - dtime = 0; - return true; - } + return false; m_accumulator -= wanted_interval; - return false; + return true; } protected: float m_accumulator; |