#:init-value
(wrap-apply thing-dispatcher)))
-(define-mhandler (thing-cmd-take thing message direct-obj)
+(define* (thing-cmd-take thing message #:key direct-obj)
(define player (message-from message))
(define player-name
- (message-ref
- (<-wait thing player 'get-name)
- 'val))
+ (msg-receive (_ #:key val)
+ (<-wait thing player 'get-name)
+ val))
(define player-loc
- (message-ref
- (<-wait thing player 'get-loc)
- 'val))
+ (msg-receive (_ #:key val)
+ (<-wait thing player 'get-loc)
+ val))
(define thing-name (slot-ref thing 'name))
(define should-take
(slot-ref-maybe-runcheck thing 'takeable player))
#:text (format #f "It doesn't seem like you can pick up ~a.\n"
thing-name))))
-(define-mhandler (thing-cmd-drop thing message direct-obj)
+(define* (thing-cmd-drop thing message #:key direct-obj)
(define player (message-from message))
(define player-name
- (message-ref
- (<-wait thing player 'get-name)
- 'val))
+ (msg-receive (_ #:key val)
+ (<-wait thing player 'get-name)
+ val))
(define player-loc
- (message-ref
- (<-wait thing player 'get-loc)
- 'val))
+ (msg-receive (_ #:key val)
+ (<-wait thing player 'get-loc)
+ val))
(define thing-name (slot-ref thing 'name))
(define should-drop
(slot-ref-maybe-runcheck thing 'dropable player))