Function: mpuz-close-game
mpuz-close-game is a byte-compiled function defined in mpuz.el.gz.
Signature
(mpuz-close-game)
Documentation
Housecleaning when puzzle has been solved.
Source Code
;; Defined in /usr/src/emacs/lisp/play/mpuz.el.gz
(defun mpuz-close-game ()
"Housecleaning when puzzle has been solved."
(setq mpuz-in-progress nil
mpuz-nb-cumulated-errors (+ mpuz-nb-cumulated-errors mpuz-nb-errors)
mpuz-nb-completed-games (1+ mpuz-nb-completed-games))
(mpuz-paint-statistics)
(let ((message (format "Puzzle solved with %d error%s. That's %s"
mpuz-nb-errors
(if (= mpuz-nb-errors 1) "" "s")
(cond ((= mpuz-nb-errors 0) "perfect!")
((= mpuz-nb-errors 1) "very good!")
((= mpuz-nb-errors 2) "good.")
((= mpuz-nb-errors 3) "not bad.")
((= mpuz-nb-errors 4) "not too bad...")
((< mpuz-nb-errors 10) "bad!")
((< mpuz-nb-errors 15) "awful.")
(t "not serious.")))))
(message "%s" message)
(sit-for 4)
(if (y-or-n-p (concat message " Start a new game? "))
(mpuz-start-new-game)
(message "Good Bye!"))))