X-Git-Url: https://jxself.org/git/?p=mudsync.git;a=blobdiff_plain;f=mudsync%2Fgameobj.scm;h=fa3554865b61eb306a66ceee6f1ce55840b52a6c;hp=50c82021ba8134ae26daad72880fb9dd48788e37;hb=4d1280ec16d7645817bf741cde658e358de66327;hpb=e6f8f000860185b49867e9c5610324b30c98abbb diff --git a/mudsync/gameobj.scm b/mudsync/gameobj.scm index 50c8202..fa35548 100644 --- a/mudsync/gameobj.scm +++ b/mudsync/gameobj.scm @@ -195,7 +195,14 @@ (<-wait actor old-loc 'remove-occupant! #:who (actor-id actor)))) (define gameobj-get-name (simple-slot-getter 'name)) -(define gameobj-get-desc (simple-slot-getter 'desc)) + +(define-mhandler (gameobj-get-desc actor message whos-looking) + (define desc-text + (match (slot-ref actor 'desc) + ((? procedure? desc-proc) + (desc-proc actor whos-looking)) + (desc desc))) + (<-reply actor message #:val desc-text)) (define (gameobj-simple-name-f gameobj) "Simplest version: return ourselves for our name."