fixed bug with clickable mirrors not disabled when game paused (MM engine)
[rocksndiamonds.git] / src / events.c
index 2365674739f44880cc7890a31ea06d5e482b6be1..a43db7c6510eaa59ea666d62baee3686480755e5 100644 (file)
@@ -298,7 +298,8 @@ void HandleMouseCursor()
        cursor_inside_playfield &&
        DelayReached(&special_cursor_delay, special_cursor_delay_value))
     {
-      SetMouseCursor(CURSOR_PLAYFIELD);
+      if (level.game_engine_type != GAME_ENGINE_TYPE_MM)
+       SetMouseCursor(CURSOR_PLAYFIELD);
     }
   }
   else if (gfx.cursor_mode != CURSOR_DEFAULT)
@@ -1324,7 +1325,7 @@ void HandleButton(int mx, int my, int button, int button_nr)
       break;
 
     case GAME_MODE_PLAYING:
-      if (level.game_engine_type == GAME_ENGINE_TYPE_MM)
+      if (level.game_engine_type == GAME_ENGINE_TYPE_MM && !tape.pausing)
        ClickElement(mx, my, button);
 #if defined(TARGET_SDL2)
       else
@@ -1332,8 +1333,8 @@ void HandleButton(int mx, int my, int button, int button_nr)
 #endif
 
 #ifdef DEBUG
-      if (button == MB_PRESSED && !motion_status && IN_GFX_FIELD_PLAY(mx, my) &&
-         GetKeyModState() & KMOD_Control)
+      if (button == MB_PRESSED && !motion_status && !button_hold &&
+         IN_GFX_FIELD_PLAY(mx, my) && GetKeyModState() & KMOD_Control)
        DumpTileFromScreen(mx, my);
 #endif