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()));
}
}
|