diff --git a/src/de/bricked/game/Game.java b/src/de/bricked/game/Game.java index 97b1a3bc166bbbf90391da7d0f13b5987098b928..c565ff78b75206a21fdf9fe3ba93044e6e375428 100644 --- a/src/de/bricked/game/Game.java +++ b/src/de/bricked/game/Game.java @@ -424,11 +424,11 @@ public class Game public Point2D getNewSpeedDirection(Point2D oldDirection, double speed) { - double influenceX = 0.5; + double oldSpeed = Math.sqrt(oldDirection.getX() * oldDirection.getX()+ oldDirection.getY() * oldDirection.getY()); - double newXSpeed = speed * influenceX; - double newYSpeed = Math.sqrt(speed * speed - newXSpeed * newXSpeed); + double newXSpeed = oldDirection.getX() * speed / oldSpeed; + double newYSpeed = oldDirection.getY() * speed / oldSpeed; - return new Point2D(-newXSpeed, -newYSpeed); + return new Point2D(newXSpeed, newYSpeed); } } \ No newline at end of file