(defun riece-hangman-word ()
"Return random word.
The wordlist is read from `riece-hangman-words-file'."
- (unless riece-hangman-words-buffer
+ (unless (and riece-hangman-words-buffer
+ (buffer-name riece-hangman-words-buffer))
(setq riece-hangman-words-buffer (generate-new-buffer " *riece-hangman*"))
(save-excursion
(set-buffer riece-hangman-words-buffer)
(buffer-disable-undo)
(insert-file-contents riece-hangman-words-file)
(let ((case-fold-search nil))
- (delete-non-matching-lines "^[a-z][a-z][a-z][a-z][a-z][a-z]"))))
+ (delete-non-matching-lines "^[a-z][a-z][a-z][a-z][a-z][a-z]+"))))
(save-excursion
(set-buffer riece-hangman-words-buffer)
- (goto-char (% (1+ (random)) (buffer-size)))
+ (goto-char (1+ (random (buffer-size))))
(if (eobp)
(beginning-of-line -1)
(beginning-of-line))
(riece-hangman-reply-with-context user (car targets)
(cdr pointer))
(riece-hangman-reply (car targets)
- (format "%s: You got it!" user))
+ (format "%s: You got it! (%s)"
+ user word))
(setq riece-hangman-player-context-alist
(delq
pointer
(add-hook 'riece-after-privmsg-hook 'riece-hangman-after-privmsg-hook))
(defun riece-hangman-enable ()
+ (random t)
(setq riece-hangman-enabled t))
(defun riece-hangman-disable ()