summaryrefslogtreecommitdiff
path: root/src/game.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/game.cpp')
-rw-r--r--src/game.cpp34
1 files changed, 20 insertions, 14 deletions
diff --git a/src/game.cpp b/src/game.cpp
index 0fc4c36b1..465911767 100644
--- a/src/game.cpp
+++ b/src/game.cpp
@@ -385,7 +385,8 @@ Game::Game():
mAdjustPerfomance(config.getBoolValue("adjustPerfomance")),
mLowerCounter(0),
mPing(0),
- mLogInput(config.getBoolValue("logInput"))
+ mLogInput(config.getBoolValue("logInput")),
+ mTime(cur_time + 1)
{
touchManager.setInGame(true);
spellManager = new SpellManager;
@@ -571,20 +572,25 @@ void Game::slowLogic()
BLOCK_START("Game::slowLogic")
if (player_node)
player_node->slowLogic();
- if (botCheckerWindow)
- botCheckerWindow->slowLogic();
- if (debugWindow)
- debugWindow->slowLogic();
- if (killStats)
- killStats->update();
- if (socialWindow)
- socialWindow->slowLogic();
- if (whoIsOnline)
- whoIsOnline->slowLogic();
+ const int time = cur_time;
+ if (mTime <= time)
+ {
+ mTime = time + 1;
+ if (botCheckerWindow)
+ botCheckerWindow->slowLogic();
+ if (debugWindow)
+ debugWindow->slowLogic();
+ if (killStats)
+ killStats->update();
+ if (socialWindow)
+ socialWindow->slowLogic();
+ if (whoIsOnline)
+ whoIsOnline->slowLogic();
+ Being::reReadConfig();
+ if (killStats)
+ killStats->recalcStats();
+ }
- Being::reReadConfig();
- if (killStats)
- killStats->recalcStats();
if (shopWindow)
shopWindow->updateTimes();
if (mainGraphics->getOpenGL())