+ (gameobj-replace-data* gameobj)))
+
+(define (gameobj-ok-to-be-taken-from gameobj message whos-acting)
+ (call-with-values (lambda ()
+ (slot-ref-maybe-runcheck gameobj 'take-me?
+ whos-acting #:from #t))
+ ;; This allows this to reply with #:why-not if appropriate
+ (lambda args
+ (apply <-reply message args))))
+
+(define (gameobj-ok-to-be-put-in gameobj message whos-acting where)
+ (call-with-values (lambda ()
+ (slot-ref-maybe-runcheck gameobj 'drop-me?
+ whos-acting where))
+ ;; This allows this to reply with #:why-not if appropriate
+ (lambda args
+ (apply <-reply message args))))