emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/sokoban 020ae7c 06/17: * sokoban/sokoban.el (sokoban-dr


From: Stefan Monnier
Subject: [elpa] externals/sokoban 020ae7c 06/17: * sokoban/sokoban.el (sokoban-draw-score): Fix off-by-one error
Date: Tue, 1 Dec 2020 17:17:28 -0500 (EST)

branch: externals/sokoban
commit 020ae7c7e80764bf05b473ab528ab7833a78cd44
Author: Stefan Monnier <monnier@iro.umontreal.ca>
Commit: Stefan Monnier <monnier@iro.umontreal.ca>

    * sokoban/sokoban.el (sokoban-draw-score): Fix off-by-one error
    
    Reported by Dieter Deyke <dieter.deyke@gmail.com>.
---
 sokoban.el | 23 +++++++++++------------
 1 file changed, 11 insertions(+), 12 deletions(-)

diff --git a/sokoban.el b/sokoban.el
index 6e8bee2..1601e9b 100644
--- a/sokoban.el
+++ b/sokoban.el
@@ -1,6 +1,6 @@
 ;;; sokoban.el --- Implementation of Sokoban for Emacs.
 
-;; Copyright (C) 1998, 2013 Free Software Foundation, Inc.
+;; Copyright (C) 1998, 2013, 2017 Free Software Foundation, Inc.
 
 ;; Author: Glynn Clements <glynn.clements@xemacs.org>
 ;; Version: 1.4
@@ -512,18 +512,17 @@ static char * player_xpm[] = {
        (gamegrid-set-cell x y c)))))
 
 (defun sokoban-draw-score ()
-  (let ((strings (vector (format "Moves:  %05d" sokoban-moves)
-                        (format "Pushes: %05d" sokoban-pushes)
-                        (format "Done:   %d/%d"
-                                sokoban-done
-                                sokoban-targets))))
-    (dotimes (y 2)
-      (let* ((string (aref strings y))
-            (len (length string)))
-       (dotimes (x len)
+  (let ((y sokoban-score-y))
+    (dolist (string (list (format "Moves:  %05d" sokoban-moves)
+                         (format "Pushes: %05d" sokoban-pushes)
+                         (format "Done:   %d/%d"
+                                 sokoban-done
+                                 sokoban-targets)))
+      (let* ((len (length string)))
+        (dotimes (x len)
          (gamegrid-set-cell (+ sokoban-score-x x)
-                            (+ sokoban-score-y y)
-                            (aref string x))))))
+                            y (aref string x))))
+      (incf y)))
   (setq mode-line-format
        (format "Sokoban:   Level: %3d   Moves: %05d   Pushes: %05d   Done: 
%d/%d"
                sokoban-level sokoban-moves sokoban-pushes



reply via email to

[Prev in Thread] Current Thread [Next in Thread]