Cleanup: remove the game_state parameter to game_colours(). No game
[sgt/puzzles] / midend.c
index 249fb2b..0d19beb 100644 (file)
--- a/midend.c
+++ b/midend.c
@@ -578,7 +578,7 @@ static int midend_really_process_key(midend *me, int x, int y, int button)
      * See if this move requires an animation.
      */
     if (special(type) && !(type == SOLVE &&
-                          (me->ourgame->mouse_priorities & SOLVE_ANIMATES))) {
+                          (me->ourgame->flags & SOLVE_ANIMATES))) {
         anim_time = 0;
     } else {
         anim_time = me->ourgame->anim_length(oldstate,
@@ -690,7 +690,7 @@ int midend_process_key(midend *me, int x, int y, int button)
         * If the new button has lower priority than the old one,
         * don't bother doing this.
         */
-       if (me->ourgame->mouse_priorities &
+       if (me->ourgame->flags &
            BUTTON_BEATS(me->pressed_mouse_button, button))
            return ret;                /* just ignore it */
 
@@ -767,20 +767,9 @@ void midend_timer(midend *me, float tplus)
 
 float *midend_colours(midend *me, int *ncolours)
 {
-    game_state *state = NULL;
     float *ret;
 
-    if (me->nstates == 0) {
-       char *aux = NULL;
-        char *desc = me->ourgame->new_desc(me->params, me->random,
-                                          &aux, TRUE);
-        state = me->ourgame->new_game(me, me->params, desc);
-        sfree(desc);
-        sfree(aux);
-    } else
-        state = me->states[0].state;
-
-    ret = me->ourgame->colours(me->frontend, state, ncolours);
+    ret = me->ourgame->colours(me->frontend, ncolours);
 
     {
         int i;
@@ -810,9 +799,6 @@ float *midend_colours(midend *me, int *ncolours)
         }
     }
 
-    if (me->nstates == 0)
-        me->ourgame->free_game(state);
-
     return ret;
 }
 
@@ -1214,7 +1200,7 @@ char *midend_solve(midend *me)
                                    me->states[me->statepos-2].state,
                                    me->states[me->statepos-1].state);
     me->dir = +1;
-    if (me->ourgame->mouse_priorities & SOLVE_ANIMATES) {
+    if (me->ourgame->flags & SOLVE_ANIMATES) {
        me->oldstate = me->ourgame->dup_game(me->states[me->statepos-2].state);
         me->anim_time =
            me->ourgame->anim_length(me->states[me->statepos-2].state,