[Super-tux-commit] supertux/src world.cpp,1.66,1.67
Brought to you by:
wkendrick
From: Ryan F. <sik...@us...> - 2004-05-06 18:50:03
|
Update of /cvsroot/super-tux/supertux/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29359 Modified Files: world.cpp Log Message: - undid Ricardo's changes Index: world.cpp =================================================================== RCS file: /cvsroot/super-tux/supertux/src/world.cpp,v retrieving revision 1.66 retrieving revision 1.67 diff -u -d -r1.66 -r1.67 --- world.cpp 6 May 2004 15:03:24 -0000 1.66 +++ world.cpp 6 May 2004 18:49:52 -0000 1.67 @@ -320,9 +320,9 @@ { int tux_pos_x = (int)(tux.base.x + (tux.base.width/2)); - if (/*level->back_scrolling || */debug_mode) + if (level->back_scrolling || debug_mode) { - if(tux.old_dir != tux.dir) + if(tux.old_dir != tux.dir && level->back_scrolling) scrolling_timer.start(CHANGE_DIR_SCROLL_SPEED); if(scrolling_timer.check()) @@ -340,13 +340,9 @@ final_scroll_x = tux_pos_x - X_SPACE; } -/* scroll_x += (final_scroll_x - scroll_x) + scroll_x += (final_scroll_x - scroll_x) / (frame_ratio * (CHANGE_DIR_SCROLL_SPEED / 100)) + (tux.physic.get_velocity_x() * frame_ratio + tux.physic.get_acceleration_x() * frame_ratio * frame_ratio); -*/ - -scroll_x += ((final_scroll_x - scroll_x) / CHANGE_DIR_SCROLL_SPEED) * frame_ratio; - // std::cerr << tux_pos_x << " " << final_scroll_x << " " << scroll_x << std::endl; } @@ -354,13 +350,13 @@ { 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 && debug_mode) + 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 && debug_mode) + else if (tux.dir == LEFT && scroll_x > tux_pos_x - X_SPACE && level->back_scrolling) scroll_x = tux_pos_x - X_SPACE; } } @@ -368,10 +364,20 @@ else /*no debug*/ { - if (scroll_x < tux_pos_x - (screen->w - X_SPACE)) + 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; |