X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Fgame.c;h=016452604f6d734b9e88e55f78561a786fc37f8f;hb=9028fc1280e47a368d8778157403b4216a89e036;hp=74c934d291b4284f04e963b5b53d3f911edb69a8;hpb=a7714efc55468a9c97e9d36116ec16e5b8875422;p=rocksndiamonds.git diff --git a/src/game.c b/src/game.c index 74c934d2..01645260 100644 --- a/src/game.c +++ b/src/game.c @@ -3620,7 +3620,8 @@ void StartMoving(int x, int y) if (CAN_FALL(element) && y < lev_fieldy - 1) { - if ((x>0 && IS_PLAYER(x-1, y)) || (x 0 && IS_PLAYER(x - 1, y)) || + (x < lev_fieldx-1 && IS_PLAYER(x + 1, y))) if (JustBeingPushed(x, y)) return; @@ -4021,7 +4022,8 @@ void StartMoving(int x, int y) Moving2Blocked(x, y, &newx, &newy); /* get next screen position */ - if (DONT_COLLIDE_WITH(element) && IS_PLAYER(newx, newy) && + if (DONT_COLLIDE_WITH(element) && + IN_LEV_FIELD(newx, newy) && IS_PLAYER(newx, newy) && !PLAYER_PROTECTED(newx, newy)) { #if 1