X-Git-Url: https://jxself.org/git/?a=blobdiff_plain;f=iflib.lisp;h=dad57f5465c3eeb760326a8cb8d63145820563df;hb=447a18ccfc600c416a481266ecac28cd2ecd720f;hp=cfa4d1e358467ee3334024ef4b4ec904a57b4260;hpb=3c7a7c60eee66182da5b409ddd78c5349992c334;p=lifp.git diff --git a/iflib.lisp b/iflib.lisp index cfa4d1e..dad57f5 100644 --- a/iflib.lisp +++ b/iflib.lisp @@ -22,9 +22,9 @@ (defpackage :if-lib (:use :common-lisp :if-basic-lib :if-console) (:export :container :room :item :clothing :capacity - :food :switchable + :food :switchable :door :predoor :n-to :ne-to :e-to :se-to :s-to :sw-to :w-to :nw-to :in-to :out-to - :u-to :d-to :cant-go + :u-to :d-to :cant-go :destination :*intscope* :*outscope* :*location* :*trace-light* :*vowels* :*score* :*gamestate* :*turns* :*dark* :add-to-scope :add-to-outscope :found-in :seen-from :with-keys @@ -91,7 +91,9 @@ ;;SECTION 2: Library-defined classes and objects -(ifclass container () (capacity integer) (has :container)) +(ifclass predoor ()) ;;Can potentially be locked... + +(ifclass container (predoor) (capacity integer) (has :container)) (ifclass supporter () (capacity integer) (has :supporter)) (ifclass room () (description string) @@ -118,6 +120,10 @@ (look (look self))) (has :~light)) +(ifclass door (predoor scenery) (destination object) (has :door :closed)) + + + ;;Compass directions (object compass ()) (object dir-n () "north" (name "north" "n") compass (property 'n-to))