rnd-20040323-1-src
[rocksndiamonds.git] / src / game.c
index 6fc7f7bdc7dbd196ecfd616c94935a282f716466..5d89ddffc1cf606225bbd3ca672c2b65f9576a3f 100644 (file)
@@ -2095,7 +2095,7 @@ void InitMovDir(int x, int y)
              break;
            }
 
-#if 1
+#if 0
            if (MovDir[x][y] == MV_NO_MOVING)   /* no start direction found */
              MovDir[x][y] = 1 << RND(4);       /* => use random direction */
 #endif
@@ -5965,9 +5965,18 @@ void ContinueMoving(int x, int y)
     MovDir[newx][newy] = 0;
   */
 
+#if 0
   if (!CAN_MOVE(element) ||
       (CAN_FALL(element) && direction == MV_DOWN))
     GfxDir[x][y] = MovDir[newx][newy] = 0;
+#else
+  if (!CAN_MOVE(element) ||
+      (CAN_FALL(element) && direction == MV_DOWN &&
+       (element == EL_SPRING ||
+       element_info[element].move_pattern == MV_WHEN_PUSHED ||
+       element_info[element].move_pattern == MV_WHEN_DROPPED)))
+    GfxDir[x][y] = MovDir[newx][newy] = 0;
+#endif
 
 #endif
 #endif