[Super-tux-commit] supertux/src world.cpp,1.78,1.79
Brought to you by:
wkendrick
From: Ryan F. <sik...@us...> - 2004-05-12 01:29:45
|
Update of /cvsroot/super-tux/supertux/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv27149 Modified Files: world.cpp Log Message: - removed old code Index: world.cpp =================================================================== RCS file: /cvsroot/super-tux/supertux/src/world.cpp,v retrieving revision 1.78 retrieving revision 1.79 diff -u -d -r1.78 -r1.79 --- world.cpp 11 May 2004 23:37:12 -0000 1.78 +++ world.cpp 12 May 2004 01:29:29 -0000 1.79 @@ -319,57 +319,43 @@ /* This functions takes cares of the scrolling */ void World::scrolling(double frame_ratio) { + + /* Auto scrolling */ if(level->hor_autoscroll_speed) - { + { scroll_x += level->hor_autoscroll_speed * frame_ratio; return; - } + } + + /* Horizontal backscrolling */ float tux_pos_x = tux.base.x + (tux.base.width/2); - if (level->back_scrolling || debug_mode) - { - if(tux.old_dir != tux.dir && level->back_scrolling) - scrolling_timer.start(CHANGE_DIR_SCROLL_SPEED); + if(tux.old_dir != tux.dir && level->back_scrolling) + scrolling_timer.start(CHANGE_DIR_SCROLL_SPEED); - if(scrolling_timer.check()) + if(scrolling_timer.check()) + { + float final_scroll_x; + if (tux.physic.get_velocity_x() > 0) + final_scroll_x = tux_pos_x - (screen->w - X_SPACE); + else if (tux.physic.get_velocity_x() < 0) + final_scroll_x = tux_pos_x - X_SPACE; + else { - float final_scroll_x; - if (tux.physic.get_velocity_x() > 0) + if (tux.dir == RIGHT) final_scroll_x = tux_pos_x - (screen->w - X_SPACE); - else if (tux.physic.get_velocity_x() < 0) + else if (tux.dir == LEFT && level->back_scrolling) final_scroll_x = tux_pos_x - X_SPACE; - else - { - if (tux.dir == RIGHT) - final_scroll_x = tux_pos_x - (screen->w - X_SPACE); - else if (tux.dir == LEFT && level->back_scrolling) - final_scroll_x = tux_pos_x - X_SPACE; - } + } - 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); - // std::cerr << tux_pos_x << " " << final_scroll_x << " " << scroll_x << std::endl; + 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); + // std::cerr << tux_pos_x << " " << final_scroll_x << " " << scroll_x << std::endl; - } - else - { - 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; - } - } } - - else /*no debug*/ + else { 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); @@ -382,7 +368,6 @@ 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 |