add function "child" that returns the first child of an object
authorgrue <grue@mail.ru>
Fri, 10 Feb 2006 10:00:54 +0000 (10:00 +0000)
committergrue <grue@mail.ru>
Fri, 10 Feb 2006 10:00:54 +0000 (10:00 +0000)
darcs-hash:549f16b097c58f4103c59bb19c0b35a2bdf43461

if.lisp

diff --git a/if.lisp b/if.lisp
index 6a0a3c22027967c87508b4a5f921265c80c8487a..881c62956b537b25ca6c5fbc4b8c2166faf8a9fc 100644 (file)
--- a/if.lisp
+++ b/if.lisp
@@ -40,7 +40,7 @@
            :read-property :rp :read-property- \r
            :exec :exec*\r
            :abstractobject :name :names :parent :children :flags\r
-           :initflags :add-flags :has :hasnt :-> :give\r
+           :initflags :add-flags :has :hasnt :-> :give :child\r
            :ifclass :object :defaction :*meta*\r
            :move :rmv :ofclass :among\r
            :verb :extend-verb :extend-verb-first\r
@@ -369,6 +369,10 @@ word in dictionary, add it."
   (not (intersection flags (flags obj))))\r
   ;(not (subsetp flags (flags obj))))\r
 \r
+(defun child (obj)\r
+  "Returns the first child of the object"\r
+  (car (children obj)))\r
+\r
 (defmethod parser ((obj abstractobject) words) \r
   "Default parser. Really bad one."\r
   (when (zerop (length words)) (return-from parser 0))\r