fixed bug when checking if end of slope is blocked by other element
[rocksndiamonds.git] / src / game_mm / mm_game.c
index 6ff1d678b886f0d648c66116da20de848fdce39f..5c5619d0e8e54fc12f51f7ffa9342420323686aa 100644 (file)
@@ -837,6 +837,9 @@ void InitGameActions_MM(void)
     AdvanceFrameCounter();
     AdvanceGfxFrame();
 
+    if (PendingEscapeKeyEvent())
+      continue;
+
 #ifdef DEBUG
     if (setup.quick_doors)
       continue;
@@ -1978,7 +1981,7 @@ static boolean HitElement(int element, int hit_mask)
          {
            int pos = getMaskFromElement(element_side);
 
-           if (mm_masks[pos][dx / 2][dx / 2] == 'X')
+           if (mm_masks[pos][dx / 2][dy / 2] == 'X')
              laser.overloaded = TRUE;
          }
        }