X-Git-Url: https://cgit.sxemacs.org/?p=riece;a=blobdiff_plain;f=lisp%2Friece-hangman.el;h=c4fd54c9c6a12981b0f5404e6a6757573f357f74;hp=cb7dd1f41c9951b8a2f9ba7f0f74a8754b69279d;hb=ffeea9318efaf2e9eab52c66bb1fcc36876e9283;hpb=e181f1a7f1ea36733e4604ffb97814d50c4e2295 diff --git a/lisp/riece-hangman.el b/lisp/riece-hangman.el index cb7dd1f..c4fd54c 100644 --- a/lisp/riece-hangman.el +++ b/lisp/riece-hangman.el @@ -96,17 +96,18 @@ This function is for internal use only." (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)) @@ -217,7 +218,8 @@ The wordlist is read from `riece-hangman-words-file'." (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 @@ -227,6 +229,7 @@ The wordlist is read from `riece-hangman-words-file'." (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 ()