diff -r 1429c303858d -r 4ba25a3d15af hedgewars/HHHandlers.inc --- a/hedgewars/HHHandlers.inc Sun Sep 26 16:28:04 2010 -0400 +++ b/hedgewars/HHHandlers.inc Sun Sep 26 19:06:59 2010 -0400 @@ -621,8 +621,10 @@ begin if (Gear^.dY.isNegative) and TestCollisionYKick(Gear, -1) then Gear^.dY:= _0; Gear^.State:= Gear^.State or gstMoving; - Gear^.dY:= Gear^.dY + cGravity - end else + if isUnderwater then Gear^.dY:= Gear^.dY + cGravity / _2 + else Gear^.dY:= Gear^.dY + cGravity + end +else begin if ((hwAbs(Gear^.dX) + hwAbs(Gear^.dY)) < _0_55) and ((Gear^.State and gstHHJumping) <> 0) then SetLittle(Gear^.dX);