X-Git-Url: https://jxself.org/git/?p=mudsync.git;a=blobdiff_plain;f=worlds%2Fbricabrac.scm;h=28ba3dbbf172cd70531c96f7ffcebde097927593;hp=301e2e9687176923bbef5b77df677d1c47b5ee02;hb=ec044e4616984614a07d540a76ee8586bca4be99;hpb=4d4af0656b0402e630eea9393420197152945e5b diff --git a/worlds/bricabrac.scm b/worlds/bricabrac.scm index 301e2e9..28ba3db 100644 --- a/worlds/bricabrac.scm +++ b/worlds/bricabrac.scm @@ -46,7 +46,7 @@ ;;; Some simple object types. ;;; ========================= -(define-class () +(define-class () (read-text #:init-value "All it says is: \"Blah blah blah.\"" #:init-keyword #:read-text) (commands @@ -140,7 +140,7 @@ Alphanumerics, _ and - only, 2-15 characters, starts with an alphabetic character.\n"))) -(define-class () +(define-class () (summons #:init-keyword #:summons) (commands @@ -275,31 +275,31 @@ Ooh, ~a!" (random-choice #:desc "It looks like you could sign this form and set your name.") ('thing:lobby:porcelain-doll - 'room:lobby - #:generally-visible #f + 'room:lobby + #: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 - 'room:lobby - #:generally-visible #f + 'room:lobby + #: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 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 - 'room:lobby - #:generally-visible #f + 'room:lobby + #: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 nice table with some doilies, drinking some Earl Grey tea, hot. Mmmm." #:goes-by '("tea set" "tea")) ('thing:lobby:mustard-pot - 'room:lobby - #:generally-visible #f + 'room:lobby + #: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 @@ -307,8 +307,8 @@ like this in a museum.") (p "Ha... imagine that... a mustard museum.")) #:goes-by '("mustard pot" "antique mustard pot" "mustard")) ('thing:lobby:head-of-elvis - 'room:lobby - #:generally-visible #f + 'room:lobby + #: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 @@ -321,8 +321,8 @@ everything you read.")) #:goes-by '("pickled head of elvis" "pickled head of Elvis" "elvis" "Elvis" "head" "pickled head")) ('thing:lobby:circuitboard-of-evlis - 'room:lobby - #:generally-visible #f + 'room:lobby + #: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 @@ -335,8 +335,8 @@ Too bad...")) "pickled circuitboard of EVLIS" "evlis" "Evlis" "EVLIS" "circuitboard" "pickled circuitboard")) ('thing:lobby:teletype-scroll - 'room:lobby - #:generally-visible #f + 'room:lobby + #: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:") @@ -356,8 +356,8 @@ English language surrounding the word 'free' have lead to a lot of terminology d "scroll of teletype paper holding the software Four Freedoms" "scroll of teletype paper holding the software four freedoms")) ('thing:lobby:orange-cat-phone - 'room:lobby - #:generally-visible #f + 'room:lobby + #: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 @@ -420,16 +420,42 @@ if this room is intended for children or child-like adults." #:name "east" #:to 'room:grand-hallway))) ('thing:playroom:cubey - 'room:playroom + 'room:playroom #:name "cubey" - #:takeable #t + #:take-me? #t #:desc " It's a little foam cube with googly eyes on it. So cute!") - ('thing:cuddles-plushie - 'room:playroom + ('thing:playroom:cuddles-plushie + '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 + '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 + '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."))) @@ -527,8 +553,8 @@ seat in the room, though." #:catchphrases prefect-quotes) ('thing:smoking-parlor:no-smoking-sign - 'room:smoking-parlor - #:generally-visible #f + 'room:smoking-parlor + #: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." @@ -542,7 +568,7 @@ It has some bits of bubble gum stuck to it... yuck." ;;; Breakroom ;;; --------- -(define-class () +(define-class () ;; The desk clerk has three states: ;; - on-duty: Arrived, and waiting for instructions (and losing patience ;; gradually) @@ -780,14 +806,23 @@ the scenery tapers off nothingness. But that can't be right, can it?" 'room:break-room #:name "the hotel desk clerk" #:desc " The hotel clerk is wearing a neatly pressed uniform bearing the -hotel insignia. She looks like she'd much rather be somewhere else." +hotel insignia. She appears to be rather exhausted." #:goes-by '("hotel desk clerk" "clerk" "desk clerk")) ('thing:break-room:void - 'room:break-room - #:generally-visible #f + 'room:break-room + #:invisible? #t #:name "The Void" #:desc "As you stare into the void, the void stares back into you." - #:goes-by '("void" "abyss" "nothingness")))) + #:goes-by '("void" "abyss" "nothingness" "scenery")) + ('thing:break-room:fence + 'room:break-room + #: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 +couple of fingers through. There appears to be some wear and tear to +the paint, but the wires themselves seem to be unusually sturdy." + #:goes-by '("fence" "cage" "wire cage"))))