X-Git-Url: https://jxself.org/git/?a=blobdiff_plain;ds=sidebyside;f=mudsync%2Froom.scm;h=56c5a5922751a71bb209e92bef8a8f8e9ff3ee1f;hb=7525c62ccdf9e3480214831fb14d9a2d30ab139d;hp=2e1b99fcdf1d8f94e4712e36736db572e42bb7e3;hpb=4ea75c3db75e83c8133e2833d0ad7820aacc30b7;p=mudsync.git diff --git a/mudsync/room.scm b/mudsync/room.scm index 2e1b99f..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))