Replay pause/end screen: removed info and reordered buttons.
[neverball] / ball / hud.c
index f757f09..4f998ff 100644 (file)
@@ -127,12 +127,15 @@ void hud_free(void)
 void hud_paint(void)
 {
     int mode = curr_lg()->mode;
+
     if (mode == MODE_CHALLENGE)
         gui_paint(Lhud_id);
-    if (mode == MODE_PRACTICE || mode == MODE_SINGLE)
+
+    if (mode == MODE_PRACTICE)
         gui_paint(Rhud2_id);
     else
         gui_paint(Rhud_id);
+
     gui_paint(time_id);
 
     if (config_get_d(CONFIG_FPS))
@@ -145,30 +148,33 @@ void hud_paint(void)
 void hud_update(int pulse)
 {
     const struct level_game *lg = curr_lg();
+
     int clock = curr_clock();
     int coins = curr_coins();
     int goal  = curr_goal();
     int balls = lg->balls;
     int score = lg->score;
-    int mode = lg->mode;
+    int mode  = lg->mode;
+
     int c_id;
     int last;
 
     if (!pulse)
     {
-    /* reset the hud */
+        /* reset the hud */
+
         gui_pulse(ball_id, 0.f);
         gui_pulse(time_id, 0.f);
         gui_pulse(coin_id, 0.f);
     }
 
     /* time and tick-tock */
-    last = gui_value(time_id);
-    if (last != clock)
+
+    if (clock != (last = gui_value(time_id)))
     {
         gui_set_clock(time_id, clock);
-        if (last > clock && pulse && mode != MODE_PRACTICE
-            && mode != MODE_SINGLE)
+
+        if (last > clock && pulse && mode != MODE_PRACTICE)
         {
             if (clock <= 1000 && (last / 100) > (clock / 100))
             {
@@ -184,23 +190,34 @@ void hud_update(int pulse)
     }
 
     /* balls and score + select coin widget */
-    if (mode == MODE_CHALLENGE)
+
+    switch (mode)
     {
+    case MODE_CHALLENGE:
         if (gui_value(ball_id) != balls) gui_set_count(ball_id, balls);
         if (gui_value(scor_id) != score) gui_set_count(scor_id, score);
+
         c_id = coin_id;
-    }
-    else if (mode == MODE_NORMAL)
+        break;
+
+    case MODE_NORMAL:
         c_id = coin_id;
-    else
+        break;
+
+    default:
         c_id = coin2_id;
+        break;
+    }
+
 
     /* coins and pulse */
-    last = gui_value(c_id);
-    if (last != coins)
+
+    if (coins != (last = gui_value(c_id)))
     {
         last = coins - last;
+
         gui_set_count(c_id, coins);
+
         if (pulse && last > 0)
         {
             if      (last >= 10) gui_pulse(coin_id, 2.00f);
@@ -217,15 +234,15 @@ void hud_update(int pulse)
     }
 
     /* goal and pulse */
-    last = gui_value(goal_id);
-    if (last != goal)
+
+    if (goal != (last = gui_value(goal_id)))
     {
         gui_set_count(goal_id, goal);
+
         if (pulse && goal == 0 && last > 0)
             gui_pulse(goal_id, 2.00f);
     }
 
-    /* fps */
     if (config_get_d(CONFIG_FPS))
         hud_fps();
 }