(<-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."