Function: mpuz-try-proposal

mpuz-try-proposal is a byte-compiled function defined in mpuz.el.gz.

Signature

(mpuz-try-proposal LETTER-CHAR DIGIT-CHAR)

Documentation

Propose LETTER-CHAR as code for DIGIT-CHAR.

Source Code

;; Defined in /usr/src/emacs/lisp/play/mpuz.el.gz
(defun mpuz-try-proposal (letter-char digit-char)
  "Propose LETTER-CHAR as code for DIGIT-CHAR."
  (let* ((letter (- letter-char ?A))
	 (digit (- digit-char ?0))
	 (correct-digit (mpuz-to-digit letter)))
    (cond ((mpuz-digit-solved-p correct-digit)
	   (message "%c has already been found." (+ correct-digit ?0)))
	  ((mpuz-digit-solved-p digit)
	   (message "%c has already been placed." digit-char))
	  ((= digit correct-digit)
	   (message "%c = %c correct!" letter-char digit-char)
	   (mpuz-ding nil)
	   (aset mpuz-found-digits digit t)	; Mark digit as solved
	   (and (mpuz-check-all-solved)
		(mpuz-close-game)))
	  (t ;;; incorrect guess
	   (message "%c = %c incorrect!" letter-char digit-char)
	   (mpuz-ding t)
	   (setq mpuz-nb-errors (1+ mpuz-nb-errors))
	   (mpuz-paint-errors)))))