~mdw
/
atoms
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
atoms.lisp: When restoring an unstable position, continue the animation.
[atoms]
/
atoms.lisp
diff --git
a/atoms.lisp
b/atoms.lisp
index
77329cf
..
eac69bc
100644
(file)
--- a/
atoms.lisp
+++ b/
atoms.lisp
@@
-417,7
+417,12
@@
do (restore player snap-player))
(setf (game-player-index game) (slot-value snapshot 'player-index))
(game-cancel-timeout game)
do (restore player snap-player))
(setf (game-player-index game) (slot-value snapshot 'player-index))
(game-cancel-timeout game)
- (changed game :refresh)))
+ (changed game :refresh)
+ (let ((critical-cells (loop for i below (array-total-size grid)
+ for cell = (row-major-aref grid i)
+ if (cell-critical-p cell)
+ collect cell)))
+ (when critical-cells (perform-explosions game critical-cells)))))
;;;--------------------------------------------------------------------------
;;; The interactive board.
;;;--------------------------------------------------------------------------
;;; The interactive board.