Deny playing bonus levels in any mode, including challenge mode. Todo: inform the...
[neverball] / ball / st_play.c
index d6f5e4f..6c2c212 100644 (file)
@@ -34,12 +34,12 @@ static int view_rotate;
 
 static int pause_or_exit(void)
 {
-    if (SDL_GetModState() & (KMOD_SHIFT | KMOD_CTRL | KMOD_ALT | KMOD_META))
+    if (SDL_GetModState() & KMOD_SHIFT)
     {
         level_stat(GAME_NONE, curr_clock(), curr_coins());
         level_stop();
         config_clr_grab();
-        
+
         return goto_state(&st_over);
     }
     return goto_pause();
@@ -74,7 +74,6 @@ static void play_ready_timer(int id, float dt)
 
     game_step_fade(dt);
     gui_timer(id, dt);
-    audio_timer(dt);
 }
 
 static int play_ready_click(int b, int d)
@@ -132,7 +131,6 @@ static void play_set_timer(int id, float dt)
 
     game_step_fade(dt);
     gui_timer(id, dt);
-    audio_timer(dt);
 }
 
 static int play_set_click(int b, int d)
@@ -211,11 +209,9 @@ static void play_loop_paint(int id, float st)
         gui_paint(id);
 }
 
-#define CAMERA_MODIFIERS (KMOD_SHIFT | KMOD_CTRL | KMOD_ALT | KMOD_META)
-
 static void play_loop_timer(int id, float dt)
 {
-    float k = ((SDL_GetModState() & CAMERA_MODIFIERS) ?
+    float k = ((SDL_GetModState() & KMOD_SHIFT) ?
                (float) config_get_d(CONFIG_ROTATE_FAST) / 100.f:
                (float) config_get_d(CONFIG_ROTATE_SLOW) / 100.f);
 
@@ -233,16 +229,19 @@ static void play_loop_timer(int id, float dt)
     {
     case GAME_GOAL:
         level_stat(GAME_GOAL, curr_clock(), curr_coins());
+        gui_stuck();
         goto_state(&st_goal);
         break;
 
     case GAME_FALL:
         level_stat(GAME_FALL, curr_clock(), curr_coins());
+        gui_stuck();
         goto_state(&st_fall_out);
         break;
 
     case GAME_TIME:
         level_stat(GAME_TIME, curr_clock(), curr_coins());
+        gui_stuck();
         goto_state(&st_time_out);
         break;
 
@@ -252,7 +251,6 @@ static void play_loop_timer(int id, float dt)
 
     game_step_fade(dt);
     demo_play_step(at);
-    audio_timer(dt);
 }
 
 static void play_loop_point(int id, int x, int y, int dx, int dy)