stopped rotating objects hit by laser after game was solved (MM engine)
authorHolger Schemel <info@artsoft.org>
Thu, 9 Mar 2017 18:50:11 +0000 (19:50 +0100)
committerHolger Schemel <info@artsoft.org>
Fri, 23 Mar 2018 22:21:10 +0000 (23:21 +0100)
src/game_mm/mm_game.c

index 4de58b82685bec2e28bdef152f38f30c16f217e7..8a7d381e44ebca3acbb941b3e4b2eb0c04d691b5 100644 (file)
@@ -2444,6 +2444,10 @@ void ClickElement(int mx, int my, int button)
   int element;
   int x = (mx - SX) / TILEX, y = (my - SY) / TILEY;
 
+  /* do not rotate objects hit by the laser after the game was solved */
+  if (game_mm.level_solved && Hit[x][y])
+    return;
+
   if (button == MB_RELEASED)
   {
     new_button = TRUE;
@@ -2647,6 +2651,10 @@ void AutoRotateMirrors()
     {
       int element = Feld[x][y];
 
+      /* do not rotate objects hit by the laser after the game was solved */
+      if (game_mm.level_solved && Hit[x][y])
+       continue;
+
       if (IS_DF_MIRROR_AUTO(element) ||
          IS_GRID_WOOD_AUTO(element) ||
          IS_GRID_STEEL_AUTO(element) ||