From 61cb4d52a6873a0af69bb8c9a295586f09b2c27a Mon Sep 17 00:00:00 2001 From: Sapier Date: Fri, 18 Dec 2015 19:20:06 +0100 Subject: [PATCH] Make collisionMoveSimple time overflow message written to log/show up at max once per step --- src/collision.cpp | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/src/collision.cpp b/src/collision.cpp index 2b64547c..187df0a5 100644 --- a/src/collision.cpp +++ b/src/collision.cpp @@ -199,18 +199,25 @@ collisionMoveResult collisionMoveSimple(Environment *env, IGameDef *gamedef, v3f &accel_f,ActiveObject* self, bool collideWithObjects) { + static bool time_notification_done = false; Map *map = &env->getMap(); //TimeTaker tt("collisionMoveSimple"); - ScopeProfiler sp(g_profiler, "collisionMoveSimple avg", SPT_AVG); + ScopeProfiler sp(g_profiler, "collisionMoveSimple avg", SPT_AVG); collisionMoveResult result; /* Calculate new velocity */ - if( dtime > 0.5 ) { - warningstream<<"collisionMoveSimple: maximum step interval exceeded, lost movement details!"< 0.5) { + if (!time_notification_done) { + time_notification_done = true; + infostream << "collisionMoveSimple: maximum step interval exceeded," + " lost movement details!"<