reknowned -> legendary
[mudsync.git] / worlds / bricabrac.scm
index 26b479634df4ffa63fe74ce7011c43b10e53c8e7..04d9240d0fe2433f6ad15d5bf26ef2a93dcdcb25 100644 (file)
@@ -276,14 +276,14 @@ Ooh, ~a!" (random-choice
 
    ('thing:lobby:porcelain-doll
     <gameobj> 'room:lobby
 
    ('thing:lobby:porcelain-doll
     <gameobj> 'room:lobby
-    #:generally-visible #f
+    #:invisible? #t
     #:name "a creepy porcelain doll"
     #:desc "It strikes you that while the doll is technically well crafted,
 it's also the stuff of nightmares."
     #:goes-by '("porcelain doll" "doll"))
    ('thing:lobby:1950s-robots
     <gameobj> 'room:lobby
     #:name "a creepy porcelain doll"
     #:desc "It strikes you that while the doll is technically well crafted,
 it's also the stuff of nightmares."
     #:goes-by '("porcelain doll" "doll"))
    ('thing:lobby:1950s-robots
     <gameobj> 'room:lobby
-    #:generally-visible #f
+    #:invisible? #t
     #:name "a set of 1950s robots"
     #:desc "There's a whole set of these 1950s style robots.
 They seem to be stamped out of tin, and have various decorations of levers
     #:name "a set of 1950s robots"
     #:desc "There's a whole set of these 1950s style robots.
 They seem to be stamped out of tin, and have various decorations of levers
@@ -291,7 +291,7 @@ and buttons and springs.  Some of them have wind-up knobs on them."
     #:goes-by '("robot" "robots" "1950s robot" "1950s robots"))
    ('thing:lobby:tea-set
     <gameobj> 'room:lobby
     #:goes-by '("robot" "robots" "1950s robot" "1950s robots"))
    ('thing:lobby:tea-set
     <gameobj> 'room:lobby
-    #:generally-visible #f
+    #:invisible? #t
     #:name "a tea set"
     #:desc "A complete tea set.  Some of the cups are chipped.
 You can imagine yourself joining a tea party using this set, around a
     #:name "a tea set"
     #:desc "A complete tea set.  Some of the cups are chipped.
 You can imagine yourself joining a tea party using this set, around a
@@ -299,7 +299,7 @@ nice table with some doilies, drinking some Earl Grey tea, hot.  Mmmm."
     #:goes-by '("tea set" "tea"))
    ('thing:lobby:mustard-pot
     <gameobj> 'room:lobby
     #:goes-by '("tea set" "tea"))
    ('thing:lobby:mustard-pot
     <gameobj> 'room:lobby
-    #:generally-visible #f
+    #:invisible? #t
     #:name "a mustard pot"
     #:desc '((p "It's a mustard pot.  I mean, it's kind of cool, it has a
 nice design, and it's an antique, but you can't imagine putting something
     #:name "a mustard pot"
     #:desc '((p "It's a mustard pot.  I mean, it's kind of cool, it has a
 nice design, and it's an antique, but you can't imagine putting something
@@ -308,7 +308,7 @@ like this in a museum.")
     #:goes-by '("mustard pot" "antique mustard pot" "mustard"))
    ('thing:lobby:head-of-elvis
     <gameobj> 'room:lobby
     #:goes-by '("mustard pot" "antique mustard pot" "mustard"))
    ('thing:lobby:head-of-elvis
     <gameobj> 'room:lobby
-    #:generally-visible #f
+    #:invisible? #t
     #:name "the pickled head of Elvis"
     #:desc '((p "It's a jar full of some briny-looking liquid and...
 a free floating head.  The head looks an awful lot like Elvis, and
     #:name "the pickled head of Elvis"
     #:desc '((p "It's a jar full of some briny-looking liquid and...
 a free floating head.  The head looks an awful lot like Elvis, and
@@ -322,7 +322,7 @@ everything you read."))
                 "elvis" "Elvis" "head" "pickled head"))
    ('thing:lobby:circuitboard-of-evlis
     <gameobj> 'room:lobby
                 "elvis" "Elvis" "head" "pickled head"))
    ('thing:lobby:circuitboard-of-evlis
     <gameobj> 'room:lobby
-    #:generally-visible #f
+    #:invisible? #t
     #:name "the pickled circuitboard of Evlis"
     #:desc '((p "It's a circuitboard from a Lisp Machine called EVLIS.
 This is quite the find, and you bet just about anyone interested in
     #:name "the pickled circuitboard of Evlis"
     #:desc '((p "It's a circuitboard from a Lisp Machine called EVLIS.
 This is quite the find, and you bet just about anyone interested in
@@ -336,7 +336,7 @@ Too bad..."))
                 "evlis" "Evlis" "EVLIS" "circuitboard" "pickled circuitboard"))
    ('thing:lobby:teletype-scroll
     <gameobj> 'room:lobby
                 "evlis" "Evlis" "EVLIS" "circuitboard" "pickled circuitboard"))
    ('thing:lobby:teletype-scroll
     <gameobj> 'room:lobby
-    #:generally-visible #f
+    #:invisible? #t
     #:name "a scroll of teletype"
     #:desc '((p "This is a scroll of teletype paper.  It's a bit old
 and yellowed but the type is very legible.  It says:")
     #:name "a scroll of teletype"
     #:desc '((p "This is a scroll of teletype paper.  It's a bit old
 and yellowed but the type is very legible.  It says:")
@@ -357,7 +357,7 @@ English language surrounding the word 'free' have lead to a lot of terminology d
                 "scroll of teletype paper holding the software four freedoms"))
    ('thing:lobby:orange-cat-phone
     <gameobj> 'room:lobby
                 "scroll of teletype paper holding the software four freedoms"))
    ('thing:lobby:orange-cat-phone
     <gameobj> 'room:lobby
-    #:generally-visible #f
+    #:invisible? #t
     #:name "a telephone shaped like an orange cartoon cat"
     #:desc "It's made out of a cheap plastic, and it's very orange.
 It resembles a striped tabby, and it's eyes hold the emotion of
     #:name "a telephone shaped like an orange cartoon cat"
     #:desc "It's made out of a cheap plastic, and it's very orange.
 It resembles a striped tabby, and it's eyes hold the emotion of
@@ -379,13 +379,14 @@ this general shape in the 1990s."
    ('room:grand-hallway
     <room> #f
     #:name "Grand Hallway"
    ('room:grand-hallway
     <room> #f
     #:name "Grand Hallway"
-    #:desc "  A majestic red carpet runs down the center of the room.
+    #:desc '((p "  A majestic red carpet runs down the center of the room.
 Busts of serious looking people line the walls, but there's no
 Busts of serious looking people line the walls, but there's no
-clear indication that they have any logical relation to this place.
-  In the center is a large statue of a bearded man.  You wonder what
-that's all about?
-  To the south is the lobby.  A door to the east is labeled \"smoking
-room\", while a door to the west is labeled \"playroom\"."
+clear indication that they have any logical relation to this place.")
+             (p "In the center is a large statue of a woman in a warrior's
+pose, but something is strange about her weapon and shield.  You wonder what
+that's all about?")
+             (p "To the south is the lobby.  A door to the east is labeled \"smoking
+room\", while a door to the west is labeled \"playroom\"."))
     #:exits
     (list (make <exit>
             #:name "south"
     #:exits
     (list (make <exit>
             #:name "south"
@@ -396,13 +397,19 @@ room\", while a door to the west is labeled \"playroom\"."
           (make <exit>
             #:name "east"
             #:to 'room:smoking-parlor)))
           (make <exit>
             #:name "east"
             #:to 'room:smoking-parlor)))
-   ('thing:ignucius-statue
+   ('thing:hackthena-statue
     <gameobj> 'room:grand-hallway
     #:name "a statue"
     <gameobj> 'room:grand-hallway
     #:name "a statue"
-    #:desc "  The statue is of a serious-looking bearded man with long, flowing hair.
-  It has a large physical halo.  Removing it is tempting, but it looks pretty
-well fastened."
-    #:goes-by '("statue" "st ignucius" "st. ignucius"))))
+    #:desc '((p "The base of the statue says \"Hackthena, guardian of the hacker
+spirit\".  You've heard of Hackthena... not a goddess, but spiritual protector of
+all good hacks, and legendary hacker herself.")
+             (p "Hackthena holds the form of a human woman.  She wears flowing
+robes, has a pear of curly bovine-esque horns protruding from the sides of her
+head, wears a pair of horn-rimmed glasses, and appears posed as if for battle.
+But instead of a weapon, she seems to hold some sort of keyboard.  And her
+shield... well it's round like a shield, but something seems off about it.
+You'd better take a closer look to be sure."))
+    #:goes-by '("hackthena statue" "hackthena" "statue"))))
 
 \f
 ;;; Playroom
 
 \f
 ;;; Playroom
@@ -422,14 +429,40 @@ if this room is intended for children or child-like adults."
    ('thing:playroom:cubey
     <gameobj> 'room:playroom
     #:name "cubey"
    ('thing:playroom:cubey
     <gameobj> 'room:playroom
     #:name "cubey"
-    #:takeable #t
+    #:take-me? #t
     #:desc "  It's a little foam cube with googly eyes on it.  So cute!")
     #:desc "  It's a little foam cube with googly eyes on it.  So cute!")
-   ('thing:cuddles-plushie
+   ('thing:playroom:cuddles-plushie
     <gameobj> 'room:playroom
     #:name "a cuddles plushie"
     #:goes-by '("plushie" "cuddles plushie" "cuddles")
     <gameobj> 'room:playroom
     #:name "a cuddles plushie"
     #:goes-by '("plushie" "cuddles plushie" "cuddles")
-    #:takeable #t
-    #:desc "  A warm and fuzzy cuddles plushie!  It's a cuddlefish!")))
+    #:take-me? #t
+    #:desc "  A warm and fuzzy cuddles plushie!  It's a cuddlefish!")
+
+   ('thing:playroom:toy-chest
+    <gameobj> 'room:playroom
+    #:name "a toy chest"
+    #:goes-by '("toy chest" "chest")
+    #:desc (lambda (toy-chest whos-looking)
+             (let ((contents (gameobj-occupants toy-chest)))
+               `((p "A brightly painted wooden chest.  The word \"TOYS\" is "
+                    "engraved on it.")
+                 (p "Inside you see:"
+                    ,(if (eq? (pk 'contents contents) '())
+                         " nothing!  It's empty!"
+                         `(ul ,(map (lambda (occupant)
+                                      `(li ,(mbody-val
+                                             (<-wait occupant 'get-name))))
+                                    (gameobj-occupants toy-chest))))))))
+    #:take-from-me? #t
+    #:put-in-me? #t)
+
+   ;; Things inside the toy chest
+   ('thing:playroom:toy-chest:rubber-duck
+    <gameobj> 'thing:playroom:toy-chest
+    #:name "a rubber duck"
+    #:goes-by '("rubber duck" "duck")
+    #:take-me? #t
+    #:desc "It's a yellow rubber duck with a bright orange beak.")))
 
 
 \f
 
 
 \f
@@ -528,7 +561,7 @@ seat in the room, though."
 
    ('thing:smoking-parlor:no-smoking-sign
     <gameobj> 'room:smoking-parlor
 
    ('thing:smoking-parlor:no-smoking-sign
     <gameobj> 'room:smoking-parlor
-    #:generally-visible #f
+    #:invisible? #t
     #:name "No Smoking Sign"
     #:desc "This sign says \"No Smoking\" in big, red letters.
 It has some bits of bubble gum stuck to it... yuck."
     #:name "No Smoking Sign"
     #:desc "This sign says \"No Smoking\" in big, red letters.
 It has some bits of bubble gum stuck to it... yuck."
@@ -784,13 +817,13 @@ hotel insignia.  She appears to be rather exhausted."
     #:goes-by '("hotel desk clerk" "clerk" "desk clerk"))
    ('thing:break-room:void
     <gameobj> 'room:break-room
     #:goes-by '("hotel desk clerk" "clerk" "desk clerk"))
    ('thing:break-room:void
     <gameobj> 'room:break-room
-    #:generally-visible #f
+    #:invisible? #t
     #:name "The Void"
     #:desc "As you stare into the void, the void stares back into you."
     #:goes-by '("void" "abyss" "nothingness" "scenery"))
    ('thing:break-room:fence
     <gameobj> 'room:break-room
     #:name "The Void"
     #:desc "As you stare into the void, the void stares back into you."
     #:goes-by '("void" "abyss" "nothingness" "scenery"))
    ('thing:break-room:fence
     <gameobj> 'room:break-room
-    #:generally-visible #f
+    #:invisible? #t
     #:name "break room cage"
     #:desc "It's a mostly-cubical wire mesh surrounding the break area.
 You can see through the gaps, but they're too small to put more than a
     #:name "break room cage"
     #:desc "It's a mostly-cubical wire mesh surrounding the break area.
 You can see through the gaps, but they're too small to put more than a