X-Git-Url: https://jxself.org/git/?p=mudsync.git;a=blobdiff_plain;f=mudsync%2Froom.scm;h=56c5a5922751a71bb209e92bef8a8f8e9ff3ee1f;hp=b2d23e652a5f654cca29dc06b1e2b0007b87984c;hb=7525c62ccdf9e3480214831fb14d9a2d30ab139d;hpb=4736bfc66c4067b0cf9daf8eb69b1fe733d54e00 diff --git a/mudsync/room.scm b/mudsync/room.scm index b2d23e6..56c5a59 100644 --- a/mudsync/room.scm +++ b/mudsync/room.scm @@ -75,6 +75,7 @@ (define room-actions (build-actions ;; desc == description + (init (wrap-apply room-init)) (wire-exits! (wrap-apply room-wire-exits!)) (cmd-go (wrap-apply room-cmd-go)) (cmd-go-where (wrap-apply room-cmd-go-where)) @@ -101,15 +102,17 @@ ;; @@: Can remove this indirection once things settle #:init-value (wrap-apply room-action-dispatch))) +(define (room-init room message) + (room-wire-exits! room)) -(define (room-wire-exits! room message) +(define (room-wire-exits! room) "Actually hook up the rooms' exit addresses to the rooms they claim to point to." (for-each (lambda (exit) (define new-exit (message-ref - (<-wait room (gameobj-gm room) 'lookup-room + (<-wait room (gameobj-gm room) 'lookup-special #:symbol (slot-ref exit 'to-symbol)) 'room-id)) @@ -130,7 +133,7 @@ claim to point to." (<- room (message-from message) 'look-room)) (else (<- room (message-from message) 'tell - #:text "I don't know where that is?\n")))) + #:text "You don't see any way to go there.\n")))) (define-mhandler (room-cmd-go-where room message) (<- room (message-from message) 'tell