From f1db2118bec94c32ebda6a281dc956ba1a480163 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Tue, 9 Apr 2013 20:19:51 +0300 Subject: Improve slow login update speed. --- src/game.cpp | 34 ++++++++++++++++++++-------------- 1 file changed, 20 insertions(+), 14 deletions(-) (limited to 'src/game.cpp') 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()) -- cgit v1.2.3-60-g2f50