-(defmacro make-object (name &key attr bhv look)
- `(let ((object '(:name ,name)))
- (union object
- (union ,(make-object-attributes attr)
- (union ,(make-object-behaviour bhv)
- ,(make-object-look look))))))
+(defmacro make-object (name attr bhv &body look)
+ `(let ((object
+ '(:name ,name :attr ,(make-object-attributes attr) :bhv ,(make-object-behaviour bhv) :look (lambda () ,@look))))
+ (add-object object)
+ object))