;;; ;;; Properties of interest: ;;; $opens? - can this object be opened? ;;; $open? - is it currently open? ;;; $locks? - can this object be locked? ;;; $locked? - is it currently locked? ;;; $lit? - is it giving off light? ;;; $transp? - is it transparent? ;;; $weight - how much it weighs, in ounces. ;;; $capacity - how much it can hold, in ounces. ;;; $invisible - should the system describe this object? (see the ;;; obelisk in x.adv) ;;; (property $parent $child $sibling $opens? $open? $locks? $locked? $lit? $transp? $weight initial-location $capacity $invisible? $SDESC $LDESC $EDESC $IDESC $visited? $onfloor? ) (property north south east west northeast northwest southeast southwest up down) (define (Parent obj) (getp obj $parent )) (define (Child obj) (getp obj $child )) (define (Sibling obj) (getp obj $sibling )) (define (Weight obj) (getp obj $weight )) (define (Capacity obj) (getp obj $capacity)) (define (Set-Parent obj p) (setp obj $parent p)) (define (Set-Child obj c) (setp obj $child c)) (define (Set-Sibling obj s) (setp obj $sibling s)) (define (Locked? obj) (getp obj $locked?)) (define (Locks? obj) (getp obj $locks?)) (define (Open? obj) (getp obj $open?)) (define (Opens? obj) (getp obj $opens?)) (define (Lit? obj) (getp obj $lit?)) (define (Transparent? obj) (getp obj $transp?)) (define (Invisible? obj) (getp obj $invisible?)) (define (Set-Open obj val) (setp obj $open? val)) (define (Set-Locked obj val) (setp obj $locked? val)) (define (SeeIn? obj) (or (Open? obj) (Transparent? obj)))