(define-module (mudsync room)
#:use-module (mudsync command)
#:use-module (mudsync gameobj)
+ #:use-module (mudsync utils)
#:use-module (8sync actors)
#:use-module (8sync agenda)
#:use-module (oop goops)
#:init-keyword #:exits
#:getter room-exits)
- (container-commands
+ (container-dom-commands
#:allocation #:each-subclass
#:init-thunk
(build-commands
- ("look" ((loose-direct-command cmd-look-at)
+ (("l" "look") ((loose-direct-command cmd-look-at)
(empty-command cmd-look-room)))
("go" ((empty-command cmd-go-where)
(loose-direct-command cmd-go)))
(lambda (return)
(for-each
(lambda (occupant)
- (mbody-receive (_ #:key goes-by)
- (<-wait occupant 'goes-by)
- (if (member called-this goes-by)
- (return occupant))))
+ (define goes-by (mbody-val (<-wait occupant 'goes-by)))
+ (if (ci-member called-this goes-by)
+ (return occupant)))
(hash-map->list (lambda (key val) key)
(slot-ref room 'occupants)))
#f)))