X-Git-Url: https://jxself.org/git/?p=mudsync.git;a=blobdiff_plain;f=worlds%2Fbricabrac.scm;h=d458327d3cd72d97d45f6b0cccb0f0bde8240bef;hp=16f91b8472e06f5ac66bf41d137e2b5d9a53c890;hb=aca41e2e3c5ed026c2672e3ac4ac364bbdef19c7;hpb=6cff5b0062ef928204295ab4327bf2d417070421 diff --git a/worlds/bricabrac.scm b/worlds/bricabrac.scm index 16f91b8..d458327 100644 --- a/worlds/bricabrac.scm +++ b/worlds/bricabrac.scm @@ -160,14 +160,11 @@ or 'skribe'? Now *that's* composition!")) (define* (sign-cmd-sign-in actor message #:key direct-obj indir-obj preposition) (define old-name - (msg-receive (_ #:key val) - (<-wait actor (message-from message) 'get-name) - val)) + (msg-val (<-wait actor (message-from message) 'get-name))) (define name indir-obj) (if (valid-name? indir-obj) (begin - (<-wait actor (message-from message) 'set-name! - #:val name) + (<-wait actor (message-from message) 'set-name! name) (<- actor (slot-ref actor 'loc) 'tell-room #:text (format #f "~a signs the form!\n~a is now known as ~a\n" old-name old-name name))) @@ -200,15 +197,14 @@ character.\n"))) #:init-value (simple-dispatcher summoning-bell-actions*))) -(define (summoning-bell-cmd-ring bell message) +(define* (summoning-bell-cmd-ring bell message . _) ;; Call back to actor who invoked this message handler ;; and find out their name. We'll call *their* get-name message ;; handler... meanwhile, this procedure suspends until we get ;; their response. (define who-rang - (msg-receive (_ #:key val) - (<-wait bell (message-from message) 'get-name) - val)) + (msg-val (<-wait bell (message-from message) 'get-name))) + ;; Now we'll invoke the "tell" message handler on the player ;; who rang us, displaying this text on their screen. ;; This one just uses <- instead of <-wait, since we don't @@ -419,9 +415,7 @@ if this room is intended for children or child-like adults." (define* (furniture-cmd-sit actor message #:key direct-obj) (define player-name - (msg-receive (_ #:key val) - (<-wait actor (message-from message) 'get-name) - val)) + (msg-val (<-wait actor (message-from message) 'get-name))) (<- actor (message-from message) 'tell #:text (format #f "You ~a ~a.\n" (slot-ref actor 'sit-phrase) @@ -609,7 +603,7 @@ with tuition at where it is...")) (<- clerk (message-from message) 'tell #:text "The clerk says, \"Sorry, I'm on my break.\"\n")))) -(define (clerk-act-be-summoned clerk message who-summoned) +(define* (clerk-act-be-summoned clerk message #:key who-summoned) (match (slot-ref clerk 'state) ('on-duty (<- clerk who-summoned 'tell @@ -635,11 +629,9 @@ feel free to ask me. For example, 'ask clerk about changing name'. You can ask me about the following: " clerk-knows-about ".\"\n"))))) -(define (clerk-cmd-dismiss clerk message) +(define* (clerk-cmd-dismiss clerk message . _) (define player-name - (msg-receive (_ #:key val) - (<-wait clerk (message-from message) 'get-name) - val)) + (msg-val (<-wait clerk (message-from message) 'get-name))) (match (slot-ref clerk 'state) ('on-duty (<- clerk (gameobj-loc clerk) 'tell-room