mirror of
git://git.tartarus.org/simon/puzzles.git
synced 2025-04-21 08:01:30 -07:00
End victory flash on new game and restart game.
Net provides the best demonstration of why. Complete a game of net, then press N while the victory flash is playing: then the victory flash keeps playing on the new game board. (Tip: save a game which but for a redo is completed, then you can reproduce this repeatedly without having to complete a new game each time.) The flash timer reset code is placed together with the animation timer reset code, because the two are conceptually related. Note that midend_restart_game resets animations via midend_finish_move.
This commit is contained in:

committed by
Simon Tatham

parent
bf81e9c1fa
commit
988b16a319
2
midend.c
2
midend.c
@ -454,6 +454,7 @@ void midend_new_game(midend *me)
|
||||
me->states[0].state);
|
||||
midend_size_new_drawstate(me);
|
||||
me->elapsed = 0.0F;
|
||||
me->flash_pos = me->flash_time = 0.0F;
|
||||
me->anim_pos = me->anim_time = 0.0F;
|
||||
if (me->ui)
|
||||
me->ourgame->free_ui(me->ui);
|
||||
@ -575,6 +576,7 @@ void midend_restart_game(midend *me)
|
||||
me->ourgame->changed_state(me->ui,
|
||||
me->states[me->statepos-2].state,
|
||||
me->states[me->statepos-1].state);
|
||||
me->flash_pos = me->flash_time = 0.0F;
|
||||
midend_finish_move(me);
|
||||
midend_redraw(me);
|
||||
midend_set_timer(me);
|
||||
|
Reference in New Issue
Block a user