[Super-tux-commit] supertux/src badguy.cpp,1.65,1.66
Brought to you by:
wkendrick
From: Ryan F. <sik...@us...> - 2004-05-06 02:12:48
|
Update of /cvsroot/super-tux/supertux/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv10186 Modified Files: badguy.cpp Log Message: - replaced some fabs() where fabsf() should be used - made jumpy's animation follow the laws of physics more closely (springs) Index: badguy.cpp =================================================================== RCS file: /cvsroot/super-tux/supertux/src/badguy.cpp,v retrieving revision 1.65 retrieving revision 1.66 diff -u -d -r1.65 -r1.66 --- badguy.cpp 2 May 2004 21:28:32 -0000 1.65 +++ badguy.cpp 6 May 2004 02:12:36 -0000 1.66 @@ -350,12 +350,12 @@ if (dir == LEFT) { dir = RIGHT; - physic.set_velocity_x(fabs(physic.get_velocity_x())); + physic.set_velocity_x(fabsf(physic.get_velocity_x())); } else { dir = LEFT; - physic.set_velocity_x(-fabs(physic.get_velocity_x())); + physic.set_velocity_x(-fabsf(physic.get_velocity_x())); } } } @@ -376,12 +376,15 @@ void BadGuy::action_jumpy(double frame_ratio) { - if (fabsf(physic.get_velocity_y()) < 2.5f) + const float vy = physic.get_velocity_y(); + + // XXX: These tests *should* use location from ground, not velocity + if (fabsf(vy) > 5.6f) + set_sprite(img_jumpy_left_down, img_jumpy_left_down); + else if (fabsf(vy) > 5.3f) set_sprite(img_jumpy_left_middle, img_jumpy_left_middle); - else if (physic.get_velocity_y() < 0) + else set_sprite(img_jumpy_left_up, img_jumpy_left_up); - else - set_sprite(img_jumpy_left_down, img_jumpy_left_down); Player& tux = *World::current()->get_tux(); @@ -1002,12 +1005,12 @@ if (pbad_c->dir == LEFT) { dir = RIGHT; - physic.set_velocity(fabs(physic.get_velocity_x()), 2); + physic.set_velocity(fabsf(physic.get_velocity_x()), 2); } else if (pbad_c->dir == RIGHT) { dir = LEFT; - physic.set_velocity(-fabs(physic.get_velocity_x()), 2); + physic.set_velocity(-fabsf(physic.get_velocity_x()), 2); } @@ -1022,12 +1025,12 @@ if (dir == LEFT) { dir = RIGHT; - physic.set_velocity_x(fabs(physic.get_velocity_x())); + physic.set_velocity_x(fabsf(physic.get_velocity_x())); } else if (dir == RIGHT) { dir = LEFT; - physic.set_velocity_x(-fabs(physic.get_velocity_x())); + physic.set_velocity_x(-fabsf(physic.get_velocity_x())); } } |