- fixed scrolling problem when starting from a reset point
authorRyan Flegel <rflegel@gmail.com>
Wed, 5 May 2004 22:24:37 +0000 (22:24 +0000)
committerRyan Flegel <rflegel@gmail.com>
Wed, 5 May 2004 22:24:37 +0000 (22:24 +0000)
SVN-Revision: 1001

src/world.cpp

index 4564c01..9a2b5e2 100644 (file)
@@ -361,13 +361,21 @@ void World::scrolling(double frame_ratio)
   }
 
   else /*no debug*/
-    {
+  {
     if (tux.physic.get_velocity_x() > 0 && scroll_x < tux_pos_x - (screen->w - X_SPACE))
       scroll_x = tux_pos_x - (screen->w - X_SPACE);
     else if (tux.physic.get_velocity_x() < 0 && scroll_x > tux_pos_x - X_SPACE && level->back_scrolling)
       scroll_x = tux_pos_x - X_SPACE;
+    else
+    {
+      if (tux.dir == RIGHT && scroll_x < tux_pos_x - (screen->w - X_SPACE))
+          scroll_x = tux_pos_x - (screen->w - X_SPACE);
+      else if (tux.dir == LEFT && scroll_x > tux_pos_x - X_SPACE && level->back_scrolling)
+          scroll_x = tux_pos_x - X_SPACE;
     }
 
+  }
+
   // this code prevent the screen to scroll before the start or after the level's end
   if(scroll_x < 0)
     scroll_x = 0;