improved changing level in main menu (regardless of cursor position)
authorHolger Schemel <info@artsoft.org>
Sat, 14 Jan 2017 19:59:21 +0000 (20:59 +0100)
committerHolger Schemel <info@artsoft.org>
Sat, 14 Jan 2017 20:25:46 +0000 (21:25 +0100)
src/screens.c

index a2f63bcdb852779816a4ed9869e4029f25a18b3c..641c5e0714b6648f646adabbe24a922466023369 100644 (file)
@@ -1849,11 +1849,7 @@ void HandleMainMenu(int mx, int my, int dx, int dy, int button)
       pos = choice + dy;
   }
 
-  if (pos == MAIN_CONTROL_LEVELS && dx != 0 && button)
-  {
-    HandleMainMenu_SelectLevel(1, (dx < 0 ? -1 : +1), NO_DIRECT_LEVEL_SELECT);
-  }
-  else if (pos == MAIN_CONTROL_FIRST_LEVEL && !button)
+  if (pos == MAIN_CONTROL_FIRST_LEVEL && !button)
   {
     HandleMainMenu_SelectLevel(MAX_LEVELS, -1, NO_DIRECT_LEVEL_SELECT);
   }
@@ -1882,6 +1878,12 @@ void HandleMainMenu(int mx, int my, int dx, int dy, int button)
 
        choice = pos;
       }
+      else if (dx != 0)
+      {
+       if (choice != MAIN_CONTROL_INFO &&
+           choice != MAIN_CONTROL_SETUP)
+         HandleMainMenu_SelectLevel(1, dx, NO_DIRECT_LEVEL_SELECT);
+      }
     }
     else
     {