Index: Games/Pingus/src/pingu_action.cxx =================================================================== RCS file: /usr/local/cvsroot/Games/Pingus/src/pingu_action.cxx,v retrieving revision 1.11 diff -u -r1.11 pingu_action.cxx --- Games/Pingus/src/pingu_action.cxx 28 Oct 2002 15:41:42 -0000 1.11 +++ Games/Pingus/src/pingu_action.cxx 31 Oct 2002 22:55:59 -0000 @@ -161,18 +161,13 @@ // If there is something to the right of the Pingu if (collision_on_walk(pingu->direction, 0)) { - // Make it so that the Pingu won't go right any further. - force_counter.x = 0; - resultant_force.x = 0; - - // Stop Pingu from still going up - if (force_counter.y < 0) - { - force_counter.y = 0; - resultant_force.y = 0; - } + // Make the Pingu reflect off the wall + force_counter.x = -(force_counter.x); + resultant_force.x = -(resultant_force.x); pingu->set_velocity(resultant_force); + + pingu->direction.change(); } else { @@ -186,18 +181,13 @@ // If there is something to the left of the Pingu if (collision_on_walk(-(pingu->direction), 0)) { - // Make it so that the Pingu won't go left any further. - force_counter.x = 0; - resultant_force.x = 0; - - // Stop Pingu from still going up - if (force_counter.y < 0) - { - force_counter.y = 0; - resultant_force.y = 0; - } + // Make the Pingu reflect off the wall + force_counter.x = -(force_counter.x); + resultant_force.x = -(resultant_force.x); pingu->set_velocity(resultant_force); + + pingu->direction.change(); } else {