#:use-module (mudsync gameobj)
#:use-module (mudsync game-master)
#:use-module (mudsync parser)
+ #:use-module (mudsync receive-star)
#:use-module (8sync actors)
#:use-module (8sync agenda)
#:use-module (8sync rmeta-slot)
(define inv-names
(map
(lambda (inv-item)
- (mbody-val (<-wait inv-item 'get-name)))
+ (<-wait inv-item 'get-name))
(gameobj-occupants player)))
(define text-to-show
(if (eq? inv-names '())
;; Ask the room for its commands
(define room-dom-commands
;; TODO: Map room id and sort
- (mbody-receive (_ #:key commands)
+ (receive* (#:key commands)
(<-wait player-loc 'get-container-dom-commands
#:verb verb)
commands))
(define room-sub-commands
;; TODO: Map room id and sort
- (mbody-receive (_ #:key commands)
+ (receive* (#:key commands)
(<-wait player-loc 'get-container-sub-commands
#:verb verb)
commands))
(define co-occupants
(remove
(lambda (x) (equal? x (actor-id player)))
- (mbody-val (<-wait player-loc 'get-occupants))))
+ (<-wait player-loc 'get-occupants)))
;; @@: There's a race condition here if someone leaves the room
;; during this, heh...
(define co-occupant-commands
(fold
(lambda (co-occupant prev)
- (mbody-receive (_ #:key commands goes-by)
+ (receive* (#:key commands goes-by)
(<-wait co-occupant 'get-commands
#:verb verb)
(append
(define inv-item-commands
(fold
(lambda (inv-item prev)
- (mbody-receive (_ #:key commands goes-by)
+ (receive* (#:key commands goes-by)
(<-wait inv-item 'get-contained-commands
#:verb verb)
(append