Port to the remove-define-mhandler 8sync branch
[mudsync.git] / mudsync / thing.scm
index a3ae6b003e3d706407252ca931e9f1fbd4d50a56..7b3a71d1538cc81c14693f3630ff88e866d22646 100644 (file)
    #: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))