Commit e546d3d9 authored by Mark Oteiza's avatar Mark Oteiza

Make dun-room-shorts a defconst

* lisp/play/dunnet.el (dun-room-shorts): Make defconst and collect
initial value into the declaration.
(dun-space-to-hyphen): Remove.
parent a6e76fc7
...@@ -1095,7 +1095,17 @@ nil nil nil nil ...@@ -1095,7 +1095,17 @@ nil nil nil nil
nil nil nil nil nil nil nil nil nil nil ;31-40 nil nil nil nil nil nil nil nil nil nil ;31-40
nil (list obj-platinum) nil nil nil nil nil nil nil nil)) nil (list obj-platinum) nil nil nil nil nil nil nil nil))
(defvar dun-room-shorts nil) (defconst dun-room-shorts
(let (res str)
(dolist (x dun-rooms)
(setq str (downcase (cadr x)))
(push (mapconcat #'identity (split-string str "[ /]+") "-") res))
(nreverse res)))
(let ((a 0))
(dolist (x dun-room-shorts)
(eval (list 'defconst (intern x) a))
(setq a (+ a 1))))
(defconst dun-endgame-questions (defconst dun-endgame-questions
'(("What is your password on the machine called ‘pokey’?" "robert") '(("What is your password on the machine called ‘pokey’?" "robert")
...@@ -2305,17 +2315,6 @@ for a moment, then straighten yourself up. ...@@ -2305,17 +2315,6 @@ for a moment, then straighten yourself up.
nil nil
result))) result)))
;;; Take a short room description, and change spaces and slashes to dashes.
(defun dun-space-to-hyphen (string)
(let (space)
(if (setq space (string-match "[ /]" string))
(progn
(setq string (concat (substring string 0 space) "-"
(substring string (1+ space))))
(dun-space-to-hyphen string))
string)))
;;; Given a unix style pathname, build a list of path components (recursive) ;;; Given a unix style pathname, build a list of path components (recursive)
(defun dun-get-path (dirstring startlist) (defun dun-get-path (dirstring startlist)
...@@ -2398,18 +2397,6 @@ for a moment, then straighten yourself up. ...@@ -2398,18 +2397,6 @@ for a moment, then straighten yourself up.
(define-key dungeon-batch-map "\r" 'exit-minibuffer) (define-key dungeon-batch-map "\r" 'exit-minibuffer)
(define-key dungeon-batch-map "\n" 'exit-minibuffer) (define-key dungeon-batch-map "\n" 'exit-minibuffer)
(dolist (x dun-rooms)
(setq dun-room-shorts
(append dun-room-shorts (list (downcase
(dun-space-to-hyphen
(cadr x)))))))
(let (a)
(setq a 0)
(dolist (x dun-room-shorts)
(eval (list 'defconst (intern x) a))
(setq a (+ a 1))))
;;;; ;;;;
;;;; This section defines the UNIX emulation functions for dunnet. ;;;; This section defines the UNIX emulation functions for dunnet.
;;;; ;;;;
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment