;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs; see the file COPYING. If not, write to the
-;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-;; Boston, MA 02111-1307, USA.
+;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+;; Boston, MA 02110-1301, USA.
;;; Commentary:
(defvar riece-hangman-player-context-alist nil)
(defvar riece-hangman-words-buffer nil)
-(defvar riece-hangman-enabled nil)
-
(defconst riece-hangman-description
"Allow channel members to play the hangman game.")
(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)
+ (with-current-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]+"))))
- (save-excursion
- (set-buffer riece-hangman-words-buffer)
+ (with-current-buffer riece-hangman-words-buffer
(goto-char (1+ (random (buffer-size))))
(if (eobp)
(beginning-of-line -1)
"")))))
(defun riece-hangman-after-privmsg-hook (prefix string)
- (if riece-hangman-enabled
+ (if (get 'riece-hangman 'riece-addon-enabled)
(let* ((user (riece-prefix-nickname prefix))
(parameters (riece-split-parameters string))
(targets (split-string (car parameters) ","))
(defun riece-hangman-insinuate ()
(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-uninstall ()
+ (remove-hook 'riece-after-privmsg-hook 'riece-hangman-after-privmsg-hook))
-(defun riece-hangman-disable ()
- (setq riece-hangman-enabled nil))
+(defun riece-hangman-enable ()
+ (random t))
(provide 'riece-hangman)