Function: dun-put-objs

dun-put-objs is a byte-compiled function defined in dunnet.el.gz.

Signature

(dun-put-objs OBJ1 OBJ2)

Source Code

;; Defined in /usr/src/emacs/lisp/play/dunnet.el.gz
(defun dun-put-objs (obj1 obj2)
  (if (and (= obj2 obj-drop) (not dun-nomail))
      (setq obj2 obj-chute))

  (if (= obj2 obj-disposal) (setq obj2 obj-chute))

  (cond
   ((and (= obj1 obj-cpu) (= obj2 obj-computer))
    (dun-remove-obj-from-inven obj-cpu)
    (setq dun-computer t)
    (dun-mprincl
"As you put the CPU board in the computer, it immediately springs to life.
The lights start flashing, and the fans seem to startup."))
   ((and (= obj1 obj-weight) (= obj2 obj-button))
    (dun-drop '("weight")))
   ((= obj2 obj-jar)                    ; Put something in jar
    (if (not (member obj1 (list obj-paper obj-diamond obj-emerald
                                obj-license obj-coins obj-egg
                                obj-nitric obj-glycerine)))
        (dun-mprincl "That will not fit in the jar.")
      (dun-remove-obj-from-inven obj1)
      (setq dun-jar (append dun-jar (list obj1)))
      (dun-mprincl "Done.")))
   ((= obj2 obj-chute)                  ; Put something in chute
    (dun-remove-obj-from-inven obj1)
    (dun-mprincl "You hear it slide down the chute and off into the distance.")
    (dun-put-objs-in-treas (list obj1)))
   ((= obj2 obj-box)                    ; Put key in key box
    (if (/= obj1 obj-key)
        (dun-mprincl "You can't put that in the key box!")
      (dun-mprincl
"As you drop the key, the box begins to shake.  Finally it explodes
with a bang.  The key seems to have vanished!")
      (dun-remove-obj-from-inven obj1)
      (dun-replace dun-room-objects computer-room (append
                                                   (nth computer-room
                                                        dun-room-objects)
                                                   (list obj1)))
      (dun-remove-obj-from-room dun-current-room obj-box)
      (setq dun-key-level (1+ dun-key-level))))

   ((and (= obj1 obj-floppy) (= obj2 obj-pc))
    (setq dun-floppy t)
    (dun-remove-obj-from-inven obj1)
    (dun-mprincl "Done."))

   ((= obj2 obj-urinal)                 ; Put object in urinal
    (dun-remove-obj-from-inven obj1)
    (dun-replace dun-room-objects urinal (append
                                          (nth urinal dun-room-objects)
                                          (list obj1)))
    (dun-mprincl "You hear it plop down in some water below."))
   ((= obj2 obj-mail)
    (dun-mprincl "The mail chute is locked."))
   ((member obj1 dun-inventory)
    (dun-mprincl
"I don't know how to combine those objects.  Perhaps you should
just try dropping it."))
   (t (dun-mprincl "You can't put that there."))))