[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/mines 4bbe9a4 14/43: * mines.el (mines-dig): Fix update
From: |
Stefan Monnier |
Subject: |
[elpa] externals/mines 4bbe9a4 14/43: * mines.el (mines-dig): Fix update of board when touch a bomb at first trial |
Date: |
Mon, 30 Nov 2020 18:44:14 -0500 (EST) |
branch: externals/mines
commit 4bbe9a471d343b33f528335c2b9bb202557beb46
Author: Tino Calancha <tino.calancha@gmail.com>
Commit: Tino Calancha <tino.calancha@gmail.com>
* mines.el (mines-dig): Fix update of board when touch a bomb at first trial
---
mines.el | 14 +++++++++++++-
1 file changed, 13 insertions(+), 1 deletion(-)
diff --git a/mines.el b/mines.el
index 8ceddd2..7f55e50 100644
--- a/mines.el
+++ b/mines.el
@@ -476,7 +476,19 @@ If called again then unflag it."
(let ((ok-pos (cl-position-if-not (lambda (x)
(eq t x)) mines-grid)))
(message "Avoided game over in the first
move")
(setq elt (aref mines-grid ok-pos))
- (cl-rotatef (aref mines-grid idx) (aref
mines-grid ok-pos))))
+ ;; Update mine positions.
+ (setf (nth (cl-position idx
mines-mine-positions)
+ mines-mine-positions) ok-pos)
+ ;; We must update `mines-grid' further: the
neighbour cells
+ ;; to IDX must show now a lower number of
near bombs; the
+ ;; cells near the new position of the bomb
must increase their
+ ;; numbers.
+ (setq mines-grid (make-vector
mines-number-cells nil))
+ ;; Add the mine positions.
+ (dolist (pos mines-mine-positions)
+ (aset mines-grid pos t))
+ ;; Update the numbers on neighbour cells.
+ (mines-set-numbers)))
;; If the cell is flagged ask for confirmation.
(if (and (not show-mines) (eq (following-char)
mines-flagged-cell-char))
(if (yes-or-no-p "This cell is flagged as
having a bomb. Uncover it? ")
- [elpa] externals/mines 3fdc08a 03/43: * mines.el (mines-game-over): Set face correctly, (continued)
- [elpa] externals/mines 3fdc08a 03/43: * mines.el (mines-game-over): Set face correctly, Stefan Monnier, 2020/11/30
- [elpa] externals/mines 4da0c1d 04/43: * screenshots/screenshot-minesweeper.png: Add screenshot, Stefan Monnier, 2020/11/30
- [elpa] externals/mines 92fb132 05/43: * Readme: Add screenshot, Stefan Monnier, 2020/11/30
- [elpa] externals/mines 735b30d 02/43: First commit, Stefan Monnier, 2020/11/30
- [elpa] externals/mines d9241c9 08/43: Add file, Stefan Monnier, 2020/11/30
- [elpa] externals/mines 4adcc96 10/43: * mines.el (mines-difficulty-level): Fix docstring, Stefan Monnier, 2020/11/30
- [elpa] externals/mines 9a1a1a4 13/43: * README.md: Update file, Stefan Monnier, 2020/11/30
- [elpa] externals/mines 0fb75df 16/43: * mines.el (mines-set-numbers): Use mines-matrix-2-index, Stefan Monnier, 2020/11/30
- [elpa] externals/mines b419959 18/43: * mines.el (mines-init): Preserve board settings after restart game, Stefan Monnier, 2020/11/30
- [elpa] externals/mines 4d800e0 09/43: * mines.el (mines--insert): Display flags with a different face, Stefan Monnier, 2020/11/30
- [elpa] externals/mines 4bbe9a4 14/43: * mines.el (mines-dig): Fix update of board when touch a bomb at first trial,
Stefan Monnier <=
- [elpa] externals/mines 5ee08ac 15/43: * mines.el (mines-mode): Initialize mode map in the body, Stefan Monnier, 2020/11/30
- [elpa] externals/mines 7247335 20/43: * mines.el: Assign copyright to FSF, Stefan Monnier, 2020/11/30
- [elpa] externals/mines 1cf5d85 23/43: * .travis.yml: Dont test for Emacs-24.3, Stefan Monnier, 2020/11/30
- [elpa] externals/mines 8eaf131 27/43: * mines.el: Bump version to 1.1, Stefan Monnier, 2020/11/30
- [elpa] externals/mines b490060 39/43: * packages/mines/mines.el: Streamline mines--insert, Stefan Monnier, 2020/11/30
- [elpa] externals/mines 82f1a92 17/43: Refactor code, Stefan Monnier, 2020/11/30
- [elpa] externals/mines 5ada7d3 06/43: * Readme: Add more screenshots, Stefan Monnier, 2020/11/30
- [elpa] externals/mines 9f7404e 07/43: Delete file, Stefan Monnier, 2020/11/30
- [elpa] externals/mines dd8b0e3 11/43: Delete screenshots, Stefan Monnier, 2020/11/30
- [elpa] externals/mines 1efe0e0 12/43: updated screenshots, Stefan Monnier, 2020/11/30