#:val (slot-ref actor slot))))
+;; TODO: Subclass from container?
(define-class <room> (<gameobj>)
(desc #:init-value ""
#:init-keyword #:desc)
+ ;; TODO: Switch this to be loc based
;; Uses a hash table like a set (values ignored)
(occupants #:init-thunk make-hash-table)
;; A list of <exit>
;; @@: Maybe eventually <room> will inherit from some more general
;; game object class
+ (contain-commands
+ #:init-value %room-contain-commands)
+
(message-handler
#:allocation #:each-subclass
#:init-value
(hash-remove! (slot-ref actor 'occupants) who))
(wire-exits! (wrap-apply room-wire-exits!)))))
+(define %room-contain-commands 'TODO)
+
+
(define (room-wire-exits! room message)
"Actually hook up the rooms' exit addresses to the rooms they
claim to point to."