curio cabinet and stuff
authorChristopher Allan Webber <cwebber@dustycloud.org>
Fri, 6 May 2016 03:09:38 +0000 (22:09 -0500)
committerChristopher Allan Webber <cwebber@dustycloud.org>
Fri, 6 May 2016 03:09:38 +0000 (22:09 -0500)
worlds/bricabrac.scm

index a42be395a7a53cd3bedfc81e86d32f63f24e60a7..c18720fb2219fc6090a09d4504dfb118648fbcb9 100644 (file)
@@ -67,9 +67,6 @@
 ;;; Lobby
 ;;; -----
 
-(define-class <locked-cabinet> (<gameobj>)
-  )
-
 (define-mhandler (npc-chat-randomly actor message)
   (define text-to-send
     (format #f "~a says: \"~a\"\n"
 (define hotel-owner-grumps
   '("Eight sinks!  Eight sinks!  And I couldn't unwind them..."
     "Don't mind the mess.  I built this place on a dare, you
-  know?"
+know?"
     "(*tearfully*) Here, take this parenthesis.  May it serve
-  you well."
+you well."
     "I gotta get back to the goblin farm soon..."
     "Oh, but I was going to make a mansion... a great,
-  beautiful mansion!  Full of ghosts!  Now all I have is this cruddy
-  mo... hotel.  Oh... If only I had more time!"
+beautiful mansion!  Full of ghosts!  Now all I have is this cruddy
+mo... hotel.  Oh... If only I had more time!"
     "I told them to paint more of the walls purple.
-  Why didn't they listen?"
+Why didn't they listen?"
     "Listen to that overhead muzak.  Whoever made that doesn't
-  know how to compose very well!  Have you heard of the bands 'fmt'
-  or 'skribe'?  Now *that's* composition!"))
+know how to compose very well!  Have you heard of the bands 'fmt'
+or 'skribe'?  Now *that's* composition!"))
 
 (define-class <chatty-npc> (<gameobj>)
   (catchphrases #:init-value '("Blarga blarga blarga!")
    #:init-value
    (simple-dispatcher (append gameobj-actions chat-actions))))
 
+(define random-bricabrac
+  '("a creepy porcelain doll"
+    "assorted 1950s robots"
+    "an exquisite tea set"
+    "an antique mustard pot"
+    "the pickled head of Elvis"
+    "the pickled circuitboard of EVLIS"
+    "a scroll of teletype paper holding the software Four Freedoms"
+    "a telephone shaped like an orange cartoon cat"))
+
 (define lobby
   (lol
    ('room:lobby
@@ -136,7 +143,7 @@ which says \"Hotel Proprietor\", but they look so disorganized that you
 think that can't possibly be true... can it?
   Despite their exhaustion, you sense they'd be happy to chat with you,
 though the conversation may be a bit one sided."
-    #:goes-by '("frumpy fellow" "fellow"
+    #:goes-by '("bescraggled fellow" "fellow"
                 "Chris Webber"  ; heh, did you rtfc?  or was it so obvious?
                 "hotel proprietor" "proprietor")
     #:catchphrases hotel-owner-grumps)
@@ -159,11 +166,20 @@ Classy!"
                 "hotel bricabrac sign"
                 "lobby sign"))
 
+   ;; Object: curio cabinets
+   ('thing:cabinet
+    <gameobj> 'room:lobby
+    #:name "a curio cabinet"
+    #:goes-by '("curio cabinet" "cabinet" "bricabrac cabinet")
+    #:desc (lambda _
+             (format #f "  The curio cabinet is full of all sorts of oddities!
+Something catches your eye!
+Ooh, ~a!" (random-choice random-bricabrac))))
+
    ;; Object: desk
    ;;  - Object: bell
    ;;  - Object: sign in form
    ;;  - Object: pamphlet
-   ;; Object: curio cabinets
    ;; Object: <invisible bell>: reprimands that you want to ring the
    ;;   bell on the desk
    )