Index / Map / last update: Oct 2007

Spaceport | Lower Level


Cosmic Encounter Gift Shop and Food Court (dbref #9087)

To lessen the congestion here, I've doubled the chances that aliens might go up, north, or south from here.

@dig Cosmic Encounter Gift Shop and Food Court
@field #9087 = each_turn : @call(8905,"playsong")
@field #9087 = listen : @call(8905,"listen")
@field #9087 = exit_0 : 9121
@field #9087 = exit_1 : 9122
@field #9087 = exit_2 : 10318
@field #9087 = exit_3 : 9631
@field #9087 = exit_4 : 9089
@field #9087 = exit_5 : 10891
@field #9087 = exit_6 : 10894
@field #9087 = exit_7 : 10897
@field #9087 = exit_8 : 10899
@field #9087 = exit_9 : 9121
@field #9087 = exit_10 : 9122
@field #9087 = exit_11 : 9089
@field #9087 = nexits : 12
@zone #9087 = #10719
@desc #9087 = @tell("%#","The gift shop and food court are both the
 geographic and economic centers of the spaceport. It can get rather busy
 here."); @call(10633,"each_turn");

aquarium (dbref #9608)

The aquarium is here 1) to provide fresh seafood for those aliens who'd appreciate it and 2), to provide an in-jokey reference to the Walkthrough Competition.

@create aquarium;fish tank;tank;fish;swim;wake fish;drink drink
@lock #9608 = #-1
@zone #9608 = #10719
@desc #9608 = @tell("%#","The aquarium is full of fresh seafood, since some
 aliens won't eat reconstituted food or they prefer food that's served
 alive. You don't recognize any of the varieties of fish inside the tank,
 but according to a label on the tank, they're called: \"swim\", \"wake
 fish\", and \"drink drink\"."); @call(10633,"each_turn");

Food-a-Rac-a-Cycle (dbref #9883)

This time, I 'borrowed' an idea from The Jetsons. It's kinda like the food replicators on Star Trek, but with futuristic punch cards. Or is that 'retro-futuristic'? And although the Jetsons never had 'corknuts', they *did* have flying pizza on the menu.

@create Food-a-Rac-a-Cycle;cycle;machine;farac;dispenser
@set #9883 = expert
@set #9883 = slippery
@lock #9883 = #-1
@fail #9883 = @tell("%#","The Food-a-Rac-a-Cycle is as large as a
 refridgerator, and extends both below the floor and above the ceiling.
 It ain't goin' nowhere."); @call(10633,"each_turn");
@field #9883 = reset : @setfield(9883,"keyprog","");
@zone #9883 = #10719
@desc #9883 = @tell("%#","This fabulous machine dispenses whatever food you
 order, assuming of course that it's been programmed for it. The current
 menu is on display, there's a slot for inserting new program cards, and
 a speaker where you can give it your order. What could be easier?");
 @call(10633,"each_turn");

read menu (dbref #9885)

@action read menu;read display;x menu;x display = Food-a-Rac-a-Cycle
 : nowhere
@field #9885 = m_1 : cheeseburger
@field #9885 = m_2 : lasagna
@field #9885 = m_3 : flying pizza
@field #9885 = m_4 : chocolate pudding
@field #9885 = m_5 : garden salad
@field #9885 = m_6 : banana
@field #9885 = m_7 : almond cork nut
@field #9885 = m_8 : chicken with rice
@field #9885 = m_9 : stewed monkey brains
@succe #9885 = @tell("%#",@print("The Food-a-Rac-a-Cycle currently has the
 following items on its menu:%c",@fieldloop("%!","m_","%v. "),
 @switch(@getfield("9883","keyprog"),"1","ordinary iron key. ","")));
 @call(10633,"each_turn");
@desc #9885 =

put * in slot (dbref #9887)

@action put * in slot;put * in machine;put * in cycle;put * in farac;
 put * in food-a-rac-a-cycle = Food-a-Rac-a-Cycle : nowhere
@set #9887 = puzzle
@succe #9887 = @switch(@object("%#","%0"), "10164", @print(
 @setfield("9883", "keyprog", "1"), @move("10164", "9671"),
 "The program card disappears into the Food-a-Rac-a-Cycle's slot. After a
 moment, you hear a 'ding!' - and the menu display changes slightly.",
 @tellroom(@location("%#"),"%#","%n inserts a program card into the slot
 of the Food-a-Rac-a-Cycle. After a moment, you hear a 'ding!' - and the
 menu display changes slightly.")), "That doesn't seem to fit in the
 slot."); @call(10633,"each_turn");
@desc #9887 =

order * (dbref #9888)

@action order * = Food-a-Rac-a-Cycle : nowhere
@set #9888 = puzzle
@field #9888 = ordnum : @switch("%0", {"cheeseburger","burger"},"1",
 {"lasagna","noodles","pasta"},"2", {"flying pizza","flying","pizza"},"3",
 { "chocolate pudding","chocolate","pudding"},"4",
 {"garden salad","salad","greens"},"5", {"banana"},"6",
 {"almond cork nut","cork nut","cork","almond","nut","corknut"},"7",
 {"chicken with rice","chicken and rice","chicken","rice"},"8",
 {"stewed monkey brains","stewed monkey","monkey brains","monkey",
 "brains","stew"},"9", {"ordinary iron key","iron key","iron","key"},
 "10","0")
@field #9888 = _n : 3
@succe #9888 = @setfield("%!","_n",@switch("%0",
 {"cheeseburger","burger"},1, {"lasagna","noodles","pasta"},2,
 {"flying pizza","flying","pizza"},3,
 {"chocolate pudding","chocolate","pudding"},4,
 {"garden salad","salad","greens"},5, {"banana"},6,
 {"almond cork nut","cork nut","cork","almond","nut","corknut"},7,
 {"chicken with rice","chicken and rice","chicken","rice"},8,
 {"stewed monkey brains","stewed monkey","monkey brains","monkey",
 "brains","stew"},9, {"ordinary iron key","iron key","iron","key"},10,0));
 @switch(@and(@eq(@getfield("%!","_n"),10),
 @not(@getfield(9883,"keyprog"))),1,@setfield("%!","_n",0));
 @switch(@getfield("%!","_n"),3,@setflag(10209,"!dark"),
 @setflag(10209,"dark"));
 @switch(@getfield("%!","_n"),{0,1,2,3,4,5,6,7,8,9},
 @print(@setfield(10090,"name",
 @getfield(10090,@print("n_",@getfield("%!","_n")))),
 @setfield(10090,"description",
 @getfield(10090,@print("d_",@getfield("%!","_n")))),
 @setfield(10090,"eat",
 @getfield(10090,@print("e_",@getfield("%!","_n")))),
 @setfield(10090,"oeat",
 @getfield(10090,@print("oe_",@getfield("%!","_n")))),
 @move(10090,"%#"), @tell("%#",@print("Whirr-whirr-whirr-DING!! The
 Food-a-Rac-a-Cycle spits out a ", @shortname(10090)," into your hands.")),
 @tellroom(@location("%#"),"%#", @print("Whirr-whirr-whirr-DING!! The
 Food-a-Rac-a-Cycle spits out a ", @shortname(10090), " into %p hands."))),
 10,@print(@move("9862","%#"),@setfield(9883,"keyprog",""),
 @tell("%#","Whirr-whirr-whirr-DING!! The Food-a-Rac-a-Cycle spits out an
 ordinary iron key into your hands."), @tellroom(@location("%#"),"%#",
 "Whirr-whirr-whirr-DING!! The Food-a-Rac-a-Cycle spits out an ordinary
 iron key into %p hands."))); @call(10633,"each_turn");
@field #9888 = givefood : @move("10090","%#"); @print(
 "Whirr-whirr-whirr-DING!! The Food-a-Rac-a-Cycle spits out a ",
 @shortname("10090"), " into your hands.");
@field #9888 = mog : @setfield("%!","_n",@execute(@getfield("%!","ordnum"));
 @setfield("10090","name",
 @getfield("10090",@print("n_",@mod(@getfield("%!","_n"),10))));
 @setfield("10090","description",
 @getfield("10090",@print("d_",@mod(@getfield("%!","_n"),10))));

flying pizza (dbref #10090)

@create flying pizza;flying;pizza
@set #10090 = expert
@set #10090 = slippery
@field #10090 = d_0 : @tell("%#","This mush may be nutricious, but its utter lack of color, texture, smell, or flavor makes the mush rather unappetising.");@call(10633,"each_turn");
@field #10090 = d_1 : @tell("%#","The cheeseburger looks rather tasty and has all your favorite trimmings.");@call(10633,"each_turn");
@field #10090 = d_2 : @tell("%#","Mmmm!! The lasagna looks and smells wonderful! Loaded with meat, cheese, and tomato sauce.");@call(10633,"each_turn");
@field #10090 = d_3 : @tell("%#","It's a normal pepperoni and extra cheese pizza, built with aerodynamic precision so one can fling it like a frisbee. A favorite at picnics.");@call(10633,"each_turn");
@field #10090 = d_4 : @tell("%#","It's a small serving of chocolate pudding, with a dollop of whipped cream on top.");@call(10633,"each_turn");
@field #10090 = d_5 : @tell("%#","It's a generous serving of a garden salad, made up of lettuce, onions, carrots, and a few small tomato wedges. There's also some dressing on the side.");@call(10633,"each_turn");
@field #10090 = d_6 : @tell("%#","It looks like a banana should.");@call(10633,"each_turn");
@field #10090 = d_7 : @tell("%#","It is but a single, but no doubt tasty, almond.");@call(10633,"each_turn");
@field #10090 = d_8 : @tell("%#","This is a complete chicken dinner, consisting of a white chicken breast without the skin, rice pilaf, carrots, and green beans. The chicken appears to have some savory spices sprinkled onto it. It all smells wonderful, and even looks to be low on fat and calories.");@call(10633,"each_turn");
@field #10090 = d_9 : @tell("%#","Ugh. A large inverted skullcap serves as a bowl for this stew of boiled gray monkey brains in a thick beefy broth. The smell suggests that it's been heavily spiced with both pepper and garlic, no doubt to disguise the putrid smell it would have if it wasn't so spiced.");@call(10633,"each_turn");
@field #10090 = n_0 : unappetising mush;mush
@field #10090 = n_1 : cheeseburger;burger
@field #10090 = n_2 : lasagna;noodles;pasta
@field #10090 = n_3 : flying pizza;flying;pizza
@field #10090 = oe_0 : samples the mush, but it's bland so %s throws it away.
@field #10090 = n_4 : chocolate pudding;chocolate;pudding;desert
@field #10090 = e_0 : @move(10090,9671);@tell("%#","You try a little of the mush. There's no taste to it at all. You throw it away."); @call(10633,"each_turn");
@field #10090 = oe_1 : eats the cheeseburger and seems to like it.
@field #10090 = n_5 : garden salad;garden;salad;greens
@field #10090 = e_1 : @move(10090,9671);@tell("%#","You eat the cheeseburger. You've certainly eaten better burgers that this one, but considering it came from a machine, that wasn't bad."); @call(10633,"each_turn");
@field #10090 = oe_2 : eats the lasagna and seems to really enjoy it.
@field #10090 = n_6 : banana;fruit
@field #10090 = e_2 : @move(10090,9671);@tell("%#","Yum! The lasagna is delicious! You eat a little too fast though, and slightly burn the roof of your mouth."); @call(10633,"each_turn");
@field #10090 = oe_3 : eats the flying pizza and seems to enjoy it.
@field #10090 = n_7 : almond cork nut;almond;cork nut;cork;nut;corknut;almond corknut
@field #10090 = e_3 : @move(10090,9671);@tell("%#","You eat the entire pizza by yourself. You must've been hungry."); @call(10633,"each_turn");
@field #10090 = oe_4 : eats the chocolate pudding and smiles.
@field #10090 = n_8 : chicken with rice;chicken and rice;chicken;rice
@field #10090 = e_4 : @move(10090,9671);@tell("%#","Eating chocolate pudding makes you feel like a kid again, if only for a little while."); @call(10633,"each_turn");
@field #10090 = oe_5 : eats the salad and contemplates.
@field #10090 = n_9 : stewed monkey brains;stew;brains;monkey;brain;monkey brains;monkey brain
@field #10090 = e_5 : @move(10090,9671);@tell("%#","You spend a few pleasant moments eating the garden salad."); @call(10633,"each_turn");
@field #10090 = oe_6 : eats the banana and satisfies %p daily potassium requirement.
@field #10090 = e_6 : @move(10090,9671);@tell("%#","You peel the banana and eat it. Today's potassium requirement is now satisfied."); @call(10633,"each_turn");
@field #10090 = oe_7 : eats the almond. Crunch, crunch, crunch, swallow.
@field #10090 = e_7 : @move(10090,9671);@tell("%#","You pop the almond into your mouth. Crunch, crunch, crunch, swallow."); @call(10633,"each_turn");
@field #10090 = oe_8 : eats the chicken dinner. You're not sure if %s liked it or not.
@field #10090 = e_8 : @move(10090,9671);@tell("%#","You eat the chicken dinner. Tasty. Not very satisfying, but tasty."); @call(10633,"each_turn");
@field #10090 = oe_9 : tries to eat the stewed monkey brains but instead throws it away in disgust.
@field #10090 = e_9 : @move(10090,9671);@tell("%#","Try as you might, you can't quite bring yourself to actually eat monkey brains. It's just too gross. You throw them away."); @call(10633,"each_turn");
@field #10090 = ohomemsg : is picked up by a frantic robot cleaner, eager to keep things clean. The robot zips away home.
@field #10090 = eat : @move(10090,9671);@tell("%#","You eat the entire pizza by yourself. You must've been hungry."); @call(10633,"each_turn");
@field #10090 = oeat : eats the flying pizza and seems to enjoy it.
@field #10090 = reset : @move(10090,9671);
@zone #10090 = #10719
@desc #10090 = It's a normal pepperoni and extra cheese pizza, built with aerodynamic precision so one can fling it like a frisbee. A favorite at picnics.

throw pizza at * (dbref #10209)

@action throw pizza at *;toss pizza at *;fling pizza at * = flying pizza : nowhere
@set #10209 = puzzle
@succe #10209 = @switch(@object(@location("%#"),"%0"),-1,@tell("%#","You don't see that here."),10475,@print(@tell("%#","You toss the flying pizza at the golden apple. The pizza flies through the thin atmosphere with grace, easily knocking the apple out of the tree. The apple falls, bounces once, and drops into your waiting hands. \"Beauty, eh?\" says the not-really-an-apple. The pizza, alas, keeps flying, away and out of sight, a pepperoni and mozzarella expression of a free an graceful spirit."), @tellroom(@location("%#"),"%#","%n tosses a pizza at the apple and knocks it out of the tree. The apple bounces into %p hands, but the pizza keeps going, and flies away, out of sight."), @move(10090,9671),@move(10475,"%#"),@setfield(10475,"lock",""), @setfield(10475,"ontree",""),@setflag(10475,"!dark")),@tell("%#","There's no reason to throw the flying pizza at that.")); @call(10633,"each_turn");
@desc #10209 =

north (dbref #9121)

@open north;n = #9000
@odrop #9121 = enters from the shops to the south.
@field #9121 = exitto : to North Arrivals
@osucc #9121 = goes north.
@succe #9121 = You walk north.
@desc #9121 = @tell("%#","There's a lounge for arrivals to the north."); @call(10633,"each_turn");
@field #9121 = lock2 : 1
@field #9121 = action2 : 9000
@field #9121 = osuccess2 : %w north.
@field #9121 = odrop2 : %w in from the shops to the south.

south (dbref #9122)

@open south;s = #9075
@odrop #9122 = enters from the shops to the north.
@field #9122 = exitto : to South Arrivals
@osucc #9122 = goes south.
@succe #9122 = You walk south.
@desc #9122 = @tell("%#","There's a lounge for arrivals to the south."); @call(10633,"each_turn");
@field #9122 = lock2 : 1
@field #9122 = action2 : 9075
@field #9122 = osuccess2 : %w south.
@field #9122 = odrop2 : %w in from the shops to the north.

west (dbref #10318)

@open west;w = #10317
@odrop #10318 = enters from the east.
@field #10318 = exitto : to Museum
@osucc #10318 = goes west.
@succe #10318 = You walk west...
@desc #10318 = @tell("%#","The museum lies to the west."); @call(10633,"each_turn");
@field #10318 = lock2 : 1
@field #10318 = action2 : 10317
@field #10318 = osuccess2 : %w west.
@field #10318 = odrop2 : %w in from the east.

east (dbref #9631)

@open east;e = #9448
@odrop #9631 = enters from the west.
@field #9631 = exitto : to Taxi Stop
@osucc #9631 = goes east.
NEW
@succe #9631 = @print("You walk east."); @setfield(9448,"%#_orientation",0);
@desc #9631 = @tell("%#","Taxis and buses can be found to the east."); @call(10633,"each_turn");
@field #9631 = lock2 : 1
@field #9631 = action2 : 9448
@field #9631 = osuccess2 : %w east.
@field #9631 = odrop2 : %w in from the west.

up (dbref #9089)

@open up;u;escalator;ride escalator;get on escalator;take escalator = #8856
@odrop #9089 = comes up the escalator.
@field #9089 = exitto : to Lobby
@osucc #9089 = takes the escalator up.
@succe #9089 = You take the escalator up...
@desc #9089 = @tell("%#","This escalator will take you up to the lobby."); @call(10633,"each_turn");

northwest (dbref #10891)

@open northwest;nw = #10890
@odrop #10891 = enters the shop.
@field #10891 = exitto : to Trader's Treasures
@osucc #10891 = enters the northwestern shop, Trader's Treasures.
@succe #10891 = You enter...
@desc #10891 = @tell("%#","It looks like an upscale curio shop."); @call(10633,"each_turn");
@field #10891 = lock2 : 1
@field #10891 = action2 : 10890
@field #10891 = osuccess2 : %w into the northwestern shop, Trader's Treasures.
@field #10891 = odrop2 : %w into the shop.

northeast (dbref #10894)

@open northeast;ne = #10893
@odrop #10894 = enters the shop.
@field #10894 = exitto : to London's of Lloyd
@osucc #10894 = enters the northeastern shop, London's of Lloyd.
@succe #10894 = You enter...
@desc #10894 = @tell("%#","It looks like a store that sells insurance."); @call(10633,"each_turn");
@field #10894 = lock2 : 1
@field #10894 = action2 : 10893
@field #10894 = osuccess2 : %w into the northeastern shop, London's of Lloyd.
@field #10894 = odrop2 : %w into the shop.

southwest (dbref #10897)

@open southwest;sw = #10896
@odrop #10897 = enters the shop.
@field #10897 = exitto : The Healing Hut
@osucc #10897 = enters the southwestern shop, The Healing Hut.
@succe #10897 = You enter...
@desc #10897 = @tell("%#","It looks like a medical clinic."); @call(10633,"each_turn");
@field #10897 = lock2 : 1
@field #10897 = action2 : 10896
@field #10897 = osuccess2 : %w into the southwestern shop, The Healing Hut.
@field #10897 = odrop2 : %w into the shop.

southeast (dbref #10899)

@open southeast;se = #10898
@odrop #10899 = enters the shop.
@field #10899 = exitto : to Gratis Goodies
@osucc #10899 = enters the southeastern shop, Gratis Goodies.
@succe #10899 = You enter...
@desc #10899 = @tell("%#","It looks like a five and dime store."); @call(10633,"each_turn");
@field #10899 = lock2 : 1
@field #10899 = action2 : 10898
@field #10899 = osuccess2 : %w into the southeastern shop, Gratis Goodies.
@field #10899 = odrop2 : %w into the shop.

Museum (dbref #10317)

@dig Museum
@field #10317 = exit_0 : 10319
@field #10317 = nexits : 1
@zone #10317 = #10719
@desc #10317 = @tell("%#","The Museum of the Eons is the newest edition to the spaceport, a joint project of the Cosmic Encounter Historical Society and the Interactive Fiction Arts Council. It looks rather empty; perhaps they're just moving in. The only exit you see is east."); @call(10633,"each_turn");

vending machine (dbref #10634)

Another Zork artifact, this time a machine that vends magic scrolls. TODO: the coins, the scrolls, inserting coins to get scrolls, casting the spells.

@create vending machine;vendor;machine;scrolls;jukebox;vm
@ofail #10634 = fails to even budge the vending machine.
@fail #10634 = @tell("%#","You fail to even budge it."); @call(10633,"each_turn");
@lock #10634 = #-1
@zone #10634 = #10719
@desc #10634 = @tell("%#","It looks like a funky jukebox, but it's really an antique vending machine made by the Frobozz Magic Magic Scroll Vending Machine Company. There's even a few scrolls left inside. On the front of the machine, there's a coin slot and four large buttons."); @call(10633,"each_turn");

coin slot (dbref #10636)

@create coin slot;slot;cs
@set #10636 = expert
@set #10636 = dark
@fail #10636 = @tell("%#","How can you take a coin slot?"); @call(10633,"each_turn");
@lock #10636 = #-1
@zone #10636 = #10719
@desc #10636 = @tell("%#","It looks like it only accepts zorkmids. Zorkmid coins, that is."); @call(10633,"each_turn");

put * in slot (dbref #10709)

@action put * in slot;put * in coin slot;put * in vending machine;put * in cs;put * in vm;put * in machine;insert * in slot;insert * in coin slot;insert * in vending machine;insert * in vm;insert * in machine;insert * = coin slot : nowhere
@set #10709 = puzzle
@succe #10709 = @let("z"=>@object("%#","%0"),@switch("%z",10708,@print(@move(10708,10719), @setfield(10634,"hascoin","1"),@tell("%#","You put the zorkmid coin into the coin slot, and it disappears from view. The vending machine makes a light 'ting!' sound."),@tellroom(@location("%#"),"%#","%n puts a zorkmid coin into the coin slot. The vending machine goes: 'ting!'")), -1, "You're not carrying that.",@print("The ", @shortname("%z"), " doesn't fit in the coin slot."))); @call(10633,"each_turn");
@desc #10709 =

buttons (dbref #10635)

@create buttons;large buttons;four large buttons;four buttons
@set #10635 = dark
@fail #10635 = @tell("%#","The large buttons are part of the vending machine. You can't take them."); @call(10633,"each_turn");
@field #10635 = opush : pushes all the buttons on the vending machine at once, which has absolutely no effect.
@field #10635 = push : @tell("%#","You push all the buttons at once, which has absolutely no effect."); @call(10633,"each_turn");
@field #10635 = pull : @call("%!","fail")
@lock #10635 = #-1
@zone #10635 = #10719
@desc #10635 = @tell("%#","| A1: REZROV | A2: IZYUK | B1: VAXUM | B2: FROTZ |"); @call(10633,"each_turn");

a1 (dbref #10637)

@create a1;a1 button;button a1;first button
@set #10637 = dark
@fail #10637 = @tell("%#","The button is a part of the vending machine. You can't take it."); @call(10633,"each_turn");
@lock #10637 = #-1
@field #10637 = push : @switch(@getfield(10634,"hascoin"),1,@print(@setfield(10634,"hascoin",""), @move(10694,"%#"), @tell("%#","You push button A1, and the machine dispenses a scribbled scroll, which you take."), @tellroom(@location("%#"),"%#","%n pushes button A1, and the machine dispenses a scribbled scroll, which %s takes.")),@print( @tell("%#","You push button A1, but nothing happens. Perhaps you need to put some money in the machine first."), @tellroom(@location("%#"),"%#","%n pushes button A1 on the vending machine, but nothing happens."))); @call(10633,"each_turn");
@field #10637 = pull : @call("%!","fail")
@zone #10637 = #10719
@desc #10637 = @tell("%#","| A1: REZROV |"); @call(10633,"each_turn");

a2 (dbref #10638)

@create a2;a2 button;button a2;second button
@set #10638 = dark
@fail #10638 = @tell("%#","The button is a part of the vending machine. You can't take it."); @call(10633,"each_turn");
@lock #10638 = #-1
@field #10638 = push : @switch(@getfield(10634,"hascoin"),1,@print(@setfield(10634,"hascoin",""), @move(10698,"%#"), @tell("%#","You push button A2, and the machine dispenses a sparkly scroll, which you take."), @tellroom(@location("%#"),"%#","%n pushes button A2, and the machine dispenses a sparkly scroll, which %s takes.")),@print(@tell("%#","You push button A2, but nothing happens. Perhaps you need to put some money in the machine first."), @tellroom(@location("%#"),"%#","%n pushes button A2 on the vending machine, but nothing happens."))); @call(10633,"each_turn");
@zone #10638 = #10719
@desc #10638 = @tell("%#","| A2: IZYUK |"); @call(10633,"each_turn");

b1 (dbref #10639)

@create b1;b1 button;button b1;third button
@set #10639 = dark
@fail #10639 = @tell("%#","The button is a part of the vending machine. You can't take it."); @call(10633,"each_turn");
@lock #10639 = #-1
@field #10639 = push : @switch(@getfield(10634,"hascoin"),1,@print(@setfield(10634,"hascoin",""),@move(10699,"%#"), @tell("%#","You push button B1, and the machine dispenses a gold leaf scroll, which you take."), @tellroom(@location("%#"),"%#","%n pushes button B1, and the machine dispenses a gold leaf scroll, which %s takes.")),@print(@tell("%#","You push button B1, but nothing happens. Perhaps you need to put some money in the machine first."), @tellroom(@location("%#"),"%#","%n pushes button B1 on the vending machine, but nothing happens."))); @call(10633,"each_turn");
@zone #10639 = #10719
@desc #10639 = @tell("%#","| B1: VAXUM |"); @call(10633,"each_turn");

b2 (dbref #10640)

@create b2;b2 button;button b2;fourth button
@set #10640 = dark
@fail #10640 = @tell("%#","The button is a part of the vending machine. You can't take it."); @call(10633,"each_turn");
@lock #10640 = #-1
@field #10640 = push : @switch(@getfield(10634,"hascoin"),1,@print(@setfield(10634,"hascoin",""), @move(10700,"%#"), @tell("%#","You push button B2, and the machine dispenses a plain scroll, which you take."), @tellroom(@location("%#"),"%#","%n pushes button B2, and the machine dispenses a plain scroll, which %s takes.")),@print(@tell("%#","You push button B2, but nothing happens. Perhaps you need to put some money in the machine first."), @tellroom(@location("%#"),"%#","%n pushes button B2 on the vending machine, but nothing happens."))); @call(10633,"each_turn");
@zone #10640 = #10719
@desc #10640 = @tell("%#","| B2: FROTZ |"); @call(10633,"each_turn");

scribbled scroll (dbref #10694)

@create scribbled scroll;scroll;rezrov;ss
@set #10694 = expert
@field #10694 = reset : @move(10694,9671)
@zone #10694 = #10719
@field #10694 = smell : The scribbled scroll has a faint smell of pine needles.
@desc #10694 = @tell("%#","The scroll reads \"rezrov spell: open even locked or enchanted objects\"."); @call(10633,"each_turn");

cast rezrov on * (dbref #10707)

@action cast rezrov on *;cast rezrov at *;rezrov * = scribbled scroll : nowhere
@set rezrov * = puzzle
@succ rezrov * = @let("z"=>@object(@location("%#"),"%0"),@switch("%z",
 // rezrov ordinary wooden door @ Praw
 #door#,@print(
  @move(10694,10719),
  "--TODO the door opens revealing a brick wall! the scroll vanishes--"
 ),
 // rezrov vending machine @ Museum
 #vm#,@print(
  @move(10694,10719),
  @move(10698,@location("%#")),
  @move(10699,@location("%#")),
  @move(10700,@location("%#")),
  "--TODO the machine opens, revealing scrolls which fall as your feet! the scroll vanishes--"
 ),
 // rezrov any other object here, else not here at all
 -1,"Although you complete the spell, nothing seems to have happened.",
 "I don't see that here."
));
 @call(10633,"each_turn");

sparkly scroll (dbref #10698)

@create sparkly scroll;scroll;izyuk;ss
@set #10698 = expert
@field #10698 = reset : @move(10698,9671)
@field #10698 = smell : The sparkly scroll tickles your nose when you try to smell it.
@field #10698 = osmell : tries to smell the sparkly scroll, but it tickles %p nose instead.
@zone #10698 = #10719
@desc #10698 = @tell("%#","The scroll reads \"izyuk spell: fly like a bird\"."); @call(10633,"each_turn");

cast izyuk on * (dbref #10703)

@action cast izyuk on *;cast izyuk at *;izyuk * = sparkly scroll : nowhere
@set izyuk * = puzzle
@succ izyuk * = @let("z"=>@object(@location("%#"),"%0"),@switch("%z",
 // izyuk himself
 "%#",@print(
  @move(10698,10719),
  "--TODO you fly! the scroll vanishes--"
 ),
 // izyuk any other object here, else not here at all
 -1,"Although you complete the spell, nothing seems to have happened.",
 "I don't see that here."
));
 @call(10633,"each_turn");

gold leaf scroll (dbref #10699)

@create gold leaf scroll;gold scroll;scroll;vaxum;gls
@set #10699 = expert
@field #10699 = reset : @move(10699,9671)
@field #10699 = smell : The gold leaf scroll smells like lilies and orchids.
@zone #10699 = #10719
@desc #10699 = @tell("%#","The scroll reads \"vaxum spell: make a hostile creature your friend\"."); @call(10633,"each_turn");

cast vaxum on * (dbref #10704)

@action cast vaxum on *;cast vaxum at *;vaxum * = gls : nowhere
@set vaxum * = puzzle
@succ vaxum * = @let("z"=>@object(@location("%#"),"%0"),@switch("%z",
 // vaxum himself
 "%#",@print(
  @move(10698,10719),
  "--TODO you feel a lot less hostile with yourself! the scroll vanishes--"
 ),
 // vaxum any other object here, else not here at all
 -1,"Although you complete the spell, nothing seems to have happened.",
 "I don't see that here."
));
 @call(10633,"each_turn");

plain scroll (dbref #10700)

@create plain scroll;scroll;frotz;ps
@set #10700 = expert
@field #10700 = reset : @move(10700,9671)
@field #10700 = smell : The plain scroll smells of ozone, like after an electical storm.
@zone #10700 = #10719
@desc #10700 = @tell("%#","The scroll reads \"frotz spell: cause something to give off light\"."); @call(10633,"each_turn");

cast frotz on * (dbref #10705)

@action cast frotz on *;cast frotz at *;frotz * = plain scroll : nowhere
@set #10705 = puzzle
@desc #10705 =

east (dbref #10319)

@open east;e = #9087
@odrop #10319 = enters from the Museum.
@field #10319 = exitto : to Shops
@osucc #10319 = goes east.
@succe #10319 = You walk east...
@desc #10319 = @tell("%#","The gift shop and food court lie to the east."); @call(10633,"each_turn");
// NEW TEST
@field #10319 = lock2 : 1
@field #10319 = action2 : 9087
@field #10319 = osuccess2 : %w east.
@field #10319 = odrop2 : %w in from the Museum.

Legend Lips (dbref #11026)

@create Legend Lips;lips;mouth;the lips;ll
@set #11026 = expert
@lock #11026 = #-1
@zone #11026 = #10719
@desc lips = @tell("%#","This exhibit appears to be little more than a beige circular wall plaque bearing a pair of red synthetic lips and the words \"KISS ME!\" in large block letters. A small label nearby says, \"Featuring over 120 kissing responses from 'Eric the Unready' and 'Gateway'. CAUTION: Contains minor spoilers. Donated by Legend Entertainment Company.\""); @call(10633,"each_turn");
@field lips = push : @tell("%#","The lips are warm, soft, and yield slightly to your touch."); @call(10633,"each_turn");
@fail lips = @tell("%#","The Legend Lips exhibit can't be taken."); @call(10633,"each_turn");
@field lips = msg_0 : >kiss [object] (default message)%cKissing a [object], while it might satisfy some bizarre sexual urge, won't get you anywhere in this game.
[...fields msg_1 thru msg_122 omitted for brevity...]
@field lips = msg_122 : >kiss duck%c"Let's not get too familiar here, pal."
@field lips = nmsgs : 123
@field #11026 = kiss : @let("y"=>@rand(@g("nmsgs")),@tell("%#",@print("You kiss the Legend Lips, and see the following in your mind's eye:%c-----%c", @call(11026,"msg_%y"), "%c-----")));

framed photograph (dbref #11235)

@create framed photograph;photograph;photo
@lock #11235 = #-1
@zone #11235 = #10719
@link #11235 = #10317
@desc #11235 = @tell("%#","It's just a normal framed photograph of three
 young adults. According to a nearby label: \"'It's a picture
 of Charlie, Emma and me in Florence Park. Marcus took it about a month
 ago, before it got real hot.' -- April Ryan, Summer of 2209.\"
 %cHuh. And this is in a museum, because...?");
 @call(10633,"each_turn");
@fail #11235 = @tell("%#","The framed photo is solidly attached to the
 wall, and just as well. Sure, it's a nice photo. But there's really no
 need to carry it around with you. It's not gonna help you solve any
 puzzles."); @call(10633,"each_turn");

North Arrival Lounge (dbref #9000)

@dig North Arrival Lounge
@set #9000 = linkok
@set #9000 = jumpok
@field #9000 = each_turn : @call(8905,"playsong")
@field #9000 = listen : @call(8905,"listen")
@field #9000 = exit_0 : 10656
@field #9000 = nexits : 4
@field #9000 = exit_1 : 10657
@field #9000 = exit_2 : 9074
@field #9000 = exit_3 : 9207
@zone #9000 = #10719
@desc #9000 = @tell("%#",@print("This is the lounge to wait in if you're expecting friends, family, or others to arrive from the galactic north half of the CE Realm. Seating is somewhat sparse and plain, but I suppose no one really stays in this lounge longer than they have to. A platform for incoming teleporters is also here. A clock on the wall reads: ", @call(10498,"text"), ", and there's also an escalator going up.")); @call(10633,"each_turn");

up (dbref #9074)

@open up;u;escalator;ride escalator;get on escalator;take escalator = #8905
@odrop #9074 = comes up the escalator.
@field #9074 = exitto : to Departures
@osucc #9074 = rides up the escalator.
@succe #9074 = You ride up the escalator...
@desc #9074 = @tell("%#","This escalator will take you up to the North Departure Lounge."); @call(10633,"each_turn");

north (dbref #10292)

@open north;n;northwest;nw;northeast;ne = nowhere
@set #10292 = dark
@succe #10292 = @tell("%#","Sorry, but that's an exit from the shuttle bays, not an entrance. Shuttles are boarded from upstairs, via the Departure lounges."); @call(10633,"each_turn");
@desc #10292 = @tell("%#","You see one-way doors leading from the shuttle bays to here."); @call(10633,"each_turn");

south (dbref #9207)

@open south;s = #9087
@odrop #9207 = enters from the north lounge.
@field #9207 = exitto : to Shops
@osucc #9207 = goes south.
@succe #9207 = You walk south.
@desc #9207 = @tell("%#","You see a gift shop and food court to the south."); @call(10633,"each_turn");
@field #9207 = lock2 : 1
@field #9207 = action2 : 9087
@field #9207 = osuccess2 : %w south.
@field #9207 = odrop2 : %w in from the north lounge.

platform (dbref #10499)

@create platform;teleport platform
@set #10499 = dark
@lock #10499 = #-1
@zone #10499 = #10719
@desc #10499 = @tell("%#","The teleport platform is a low, flat, circular platform about 6 feet wide, painted with the traditional incoming target symbol: a red-and-white bullseye with four yellow lightning bolts radiating out from the center."); @call(10633,"each_turn");

wallclock (dbref #10498)

@create wallclock;clock;time
@set #10498 = dark
@field #10498 = text : @print("[",@substr(@print("0",@time("hour")),"-2"),":", @substr(@print("0",@time("min")),"-2"),":",@substr(@print("0",@time("sec")),"-2"),"]");
@lock #10498 = #-1
@zone #10498 = #10719
@fail #10498 = @tell("%#","Um... no. Sorry. The clock is attached to the wall and out of reach."); @call(10633,"each_turn");
@desc #10498 = @tell("%#",@call(10498,"text")); @call(10633,"each_turn");

west (dbref #10656)

@open west;w = nowhere
@field #10656 = exitto : to Men's Room
@field #10656 = action2 : 9219
@field #10656 = osuccess2 : enters the Men's Room.
@field #10656 = odrop2 : enters from the lower east door.
@field #10656 = lock2 : @and(@testflag(@getfield(10633,"the_alien"),"male"), @not(@testflag(@getfield(10633,"the_alien"),"female")))
@succe #10656 = @switch("%s","he",@print(@tell("%#","You enter the Men's Room."), @tellroom(@location("%#"),"%#","%n enters the Men's Room."), @tellroom(9219,"","%n enters from the lower east door."), @move("%#",9219)), @print(@tell("%#","A male washroom sprite appears and bars your way. \"This is the Men's Room! You can't come in here! It's for males only!\" he tells you, and then vanishes."), @tellroom(@location("%#"),"%#","%n tries to enter the Men's Room, but a washroom sprite bars %p way."), @call(10633,"each_turn")))
@desc #10656 = @tell("%#","That's the door to the Men's washroom."); @call(10633,"each_turn");

east (dbref #10657)

@open east;e = nowhere
@field #10657 = exitto : to Unmen's Room
@field #10657 = action2 : 9223
@field #10657 = osuccess2 : enters the Unmen's Room.
@field #10657 = odrop2 : enters from the lower west door.
@field #10657 = lock2 : @and(@not(@testflag(@getfield(10633,"the_alien"),"male")), @not(@testflag(@getfield(10633,"the_alien"),"female")))
@succe #10657 = @switch("%s","it",@print(@tell("%#","You enter the Unmen's Room."), @tellroom(@location("%#"),"%#","%n enters the Unmen's Room."), @tellroom(9223,"","%n enters from the lower east door."), @move("%#",9223)), @print(@tell("%#","A neuter washroom sprite appears and bars your way. \"This is the Unmen's Room! You can't come in here! It's for neuters only!\" it tells you, and then vanishes."), @tellroom(@location("%#"),"%#","%n tries to enter the Unmen's Room, but a washroom sprite bars %p way."), @call(10633,"each_turn")))
@desc #10657 = @tell("%#","That's the door to the Unmen's washroom."); @call(10633,"each_turn");

South Arrival Lounge (dbref #9075)

The arrival lounges are mirror images of each other. No surprises here.

@dig South Arrival Lounge
@set #9075 = linkok
@set #9075 = jumpok
@field #9075 = each_turn : @call(8905,"playsong")
@field #9075 = listen : @call(8905,"listen")
@field #9075 = exit_0 : 10668
@field #9075 = nexits : 4
@field #9075 = exit_1 : 10669
@field #9075 = exit_2 : 9086
@field #9075 = exit_3 : 9088
@zone #9075 = #10719
@desc #9075 = @tell("%#",@print("This is the lounge to wait in if you're expecting friends, family, or others to arrive from the galactic south half of the CE Realm. Seating is somewhat sparse and plain, but I suppose no one really stays in this lounge longer than they have to. A platform for incoming teleporters is also here. A clock on the wall reads: ", @call(10498,"text"), ", and there's also an escalator going up.")); @call(10633,"each_turn");

up (dbref #9086)

@open up;u;escalator;ride escalator;get on escalator;take escalator = #8982
@odrop #9086 = comes up the escalator.
@field #9086 = exitto : to Departures
@osucc #9086 = rides up the escalator.
@succe #9086 = You ride up the escalator...
@desc #9086 = @tell("%#","This escalator will take you up to the South Departure Lounge."); @call(10633,"each_turn");

north (dbref #9088)

@open north;n = #9087
@odrop #9088 = enters from the south lounge.
@field #9088 = exitto : to Shops
@osucc #9088 = goes north.
@succe #9088 = You walk north.
@desc #9088 = @tell("%#","You see a gift shop and a food court to the north."); @call(10633,"each_turn");
@field #9088 = lock2 : 1
@field #9088 = action2 : 9087
@field #9088 = osuccess2 : %w north.
@field #9088 = odrop2 : %w in from the south lounge.

south (dbref #10293)

@open south;s;southwest;sw;southeast;se = nowhere
@set #10293 = dark
@succe #10293 = @tell("%#","Sorry, but that's an exit from the shuttle bays, not an entrance. Shuttles are boarded from upstairs, via the Departure lounges."); @call(10633,"each_turn");
@desc #10293 = @tell("%#","You see one-way doors leading from the shuttle bays to here."); @call(10633,"each_turn");

platform (dbref #10500)

@create platform;teleport platform
@set #10500 = dark
@lock #10500 = #-1
@zone #10500 = #10719
@desc #10500 = @tell("%#","The teleport platform is a low, flat, circular platform about 6 feet wide, painted with the traditional incoming target symbol: a red-and-white bullseye with four yellow lightning bolts radiating out from the center."); @call(10633,"each_turn");

wallclock (dbref #9213)

@create wallclock;clock;time
@set #9213 = dark
@lock #9213 = #-1
@zone #9213 = #10719
@fail #9213 = @tell("%#","Um... no. Sorry. The clock is attached to the wall and out of reach."); @call(10633,"each_turn");
@desc #9213 = @tell("%#",@call(10498,"text")); @call(10633,"each_turn");

west (dbref #10668)

@open west;w = nowhere
@field #10668 = exitto : to Women's Room
@field #10668 = action2 : 9432
@field #10668 = osuccess2 : enters the Women's Room.
@field #10668 = odrop2 : enters from the lower east door.
@field #10668 = lock2 : @and(@not(@testflag(@getfield(10633,"the_alien"),"male")), @testflag(@getfield(10633,"the_alien"),"female"))
@succe #10668 = @switch("%s","she",@print(@tell("%#","You enter the Women's Room."), @tellroom(@location("%#"),"%#","%n enters the Women's Room."), @tellroom(9432,"","%n enters from the lower east door."), @move("%#",9432)), @print(@tell("%#","A female washroom sprite appears and bars your way. \"This is the Women's Room! You can't come in here! It's for females only!\" she tells you, and then vanishes."), @tellroom(@location("%#"),"%#","%n tries to enter the Women's Room, but a washroom sprite bars %p way."), @call(10633,"each_turn")))
@desc #10668 = @tell("%#","That's the door to the Women's washroom."); @call(10633,"each_turn");

east (dbref #10669)

@open east;e = nowhere
@field #10669 = exitto : to Hamen's Room
@field #10669 = action2 : 9437
@field #10669 = osuccess2 : enters the Hamen's Room.
@field #10669 = odrop2 : enters from the lower west door.
@field #10669 = lock2 : @and(@testflag(@getfield(10633,"the_alien"),"male"), @testflag(@getfield(10633,"the_alien"),"female"))
@succe #10669 = @switch("%s",{"he","she","it"},@print(@tell("%#","A hermaphrodite washroom sprite appears and bars your way. \"This is the Hamen's Room! You can't come in here! It's for hermaphrodites and transgenders only!\" he/she tells you, and then vanishes."), @tellroom(@location("%#"),"%#","%n tries to enter the Hamen's Room, but a washroom sprite bars %p way."),@call(10633,"each_turn")), @print(@tell("%#","You enter the Hamen's Room."),@tellroom(@location("%#"),"%#","%n enters the Hamen's Room."),@tellroom(9437,"","%n enters from the lower west door."),@move("%#",9437)))
@desc #10669 = @tell("%#","That's the door to the Hamen's washroom."); @call(10633,"each_turn");

Taxi Stop (dbref #9448)

TODO: Sometimes, you'll see two or more taxis stacked within one tube. Inside the vehicles, gravity seems to be turned sideways.

@dig Taxi Stop
@field #9448 = exit_0 : 10658
@field #9448 = nexits : 1
@zone #9448 = #10719
@desc #9448 =
 @switch(@getfield(9448,"%#_orientation"),1,
 @tell("%#","(on the east wall) You are standing on the upper end of the east wall of 
 the taxi stop, near a maintentance portal in the ceiling.
 Fortunately, gravity near the ceiling of this room is turned sideways,
 so you're in no danger of falling if you stay where you are.
 From your point of view, the taxi stop is a big room, with large clear
 plexiglass tubes that extend across the room, halfway \"up\" above you.
 Taxis and buses - that look like giant marbles and cold capsules,
 respectively - enter and exit the tubes. However, of even greater
 immediate interest is the waterfall, whose pool is right beside you."),
 @tell("%#","Just another normal taxi stop in outer space. In other words,
 it's a big room with large clear plexiglass tubes that extend through
 both ceiling and floor. The taxis and buses - that look like giant
 marbles and cold capsules, respectively - enter from the top end of the
 tubes, stop at floor level to let passengers on and off, and then fall
 through an airlock in the floor.")
 );
 @call(10633,"each_turn");

sideways waterfall (dbref #10718)

@create sideways waterfall;waterfall;water;pool;wishing well;well;ww;sw
@field #10718 = search : @switch(@and(@eq(@location(10716),9448),@testflag(10716,"dark")),"1","You spot a dented lucre in the wishing well!", "You see only water."); @call(10633,"each_turn");
@lock #10718 = #-1
@zone #10718 = #10719
@desc #10718 =
 @switch(@getfield(9448,"%#_orientation"),1,
 @tell("%#",@print("Adding to the drama of the taxi stop is an enormous
 waterfall. The wide ribbon of water falls down from a grate high above
 you in the west wall (your current \"ceiling\"), into a wishing or pool of some
 kind at your feet, here on the upper end of the east wall (which is
 now your \"floor\").",
 @switch(@testflag(10716,"dark"),1," Is something in the pool?")
 )),
 @tell("%#",@print("Adding to the drama of the taxi stop is an enormous
 sideways waterfall high overhead. The wide ribbon of water falls across
 the ceiling from a grate in the upper end of the west wall, to a wishing
 well or pool of some kind in the upper end of the east wall.",
 @switch(@testflag(10716,"dark"),1," Is something in the pool?")
 ))); @call(10633,"each_turn");

dented lucre (dbref #10716)

@create dented lucre;lucre;dented coin;coin;dl
@set #10716 = dark
@lock #10716 = #-1
@field #10716 = comment : This is the lucre found in the Taxi's Stop's waterfall.
@fail #10716 = @switch(@testflag("%!","dark"),1,
 @print(
  @switch(@getfield(9448,"%#_orientation"),1,@print(
   @move("%!","%#"), @setflag("%!","!dark"),
   @tell("%#","You retrieve the dented lucre from out of the pool."),
   @tellroom(@location("%#"),"%#","%n retrieves the dented lucre from out of the pool.")
  ),
  @tell("%#","The dented lucre is in the pool at the high end of the east wall,
  which is, oh, at least fifteen feet up. Unless you know how to defy
  gravity too, you're not going to be able to reach it."))
 ),@print(
  @move("%!","%#"),
  @tell("%#","You pick up the dented lucre."),
  @tellroom(@location("%#"),"%#","%n picks up the dented lucre.")
 )); @call(10633,"each_turn");
@field #10716 = reset : @move(10716,9448); @setflag(10716,"dark");
@zone #10716 = #10719
@desc #10716 = @getfield(10710,"description")

taxi (dbref #10071)

@create taxi;taxicab;taxi cab;taxi car;car;bubble;sphere
@set #10071 = expert
@field #10071 = desctaxi_8796 : 1
@fail #10071 = @tell("%#","Carry a taxi? You must be joking."); @call(10633,"each_turn");
@field #10071 = desctaxi_576 : 1
@lock #10071 = #-1
@zone #10071 = #10719
@desc #10071 = @tell("%#","You look at the \"taxi\". It's a small silver sphere with windows, barely large enough for three people, or two people with luggage. Inside, you see the driver, a member of the Hurtz race, waiting for a customer."); @switch(@getfield("%!","desctaxi_%#"),1,"",@print(@setfield("%!","desctaxi_%#",1), @tell("%#","Herb the Hurtz says (to you), \"Hey, you like? It's a used Mercurymaster 6 from Cloneworld. Sure, it's got a few light-years on it... but hey, it's reliable.\""))); @call(10633,"each_turn");

enter taxi (dbref #10206)

@action enter taxi;enter taxicab;enter taxi cab;enter taxi car;enter car;enter bubble;enter sphere;ride taxi;ride taxicab;ride taxi cab;ride taxi car;ride car;ride bubble;ride sphere;get in taxi;get in taxicab;get in taxicab;get in taxi car;get in car;get in bubble;get in sphere = taxi : nowhere
@succe #10206 =
 @switch(1,@and(
  @eq(@getfield(10206,"location"),9448),
  @eq(@getfield(9448,"%#_orientation"),1)),
   @tell("%#","Your current orientation puts the taxi high above you. You can't reach the taxi from here, let alone enter it."),
  @print(
   @tell("%#","You step into the taxi."),
   @tellroom(@location("%#"),"%#","%n steps into the taxi."),
   @tellroom(4485,"%#","%n steps into the taxi."),
   @move("%#",4485),
   @tell("%#","Herb turns to you and asks, \"Where to, bub?\""),
   @tellroom(4485,"%#","Herb turns to %n and asks, \"Where to, bub?\"")
  )
 );
 @call(10633,"each_turn");
---
@succe #10206 = @switch(1,@and( @eq(@getfield(10206,"location"),9448), @eq(@getfield(9448,"%#_orientation"),1)), @tell("%#","Your current orientation puts the taxi high above you. You can't reach the taxi from here, let alone enter it."), @print( @tell("%#","You step into the taxi."), @tellroom(@location("%#"),"%#","%n steps into the taxi."), @tellroom(4485,"%#","%n steps into the taxi."), @move("%#",4485), @tell("%#","Herb turns to you and asks, \"Where to, bub?\""), @tellroom(4485,"%#","Herb turns to %n and asks, \"Where to, bub?\""))); @call(10633,"each_turn");
===
@desc #10206 =

west (dbref #10658)

@open west;w = nowhere
@odrop #10658 = enters from the east.
@field #10658 = exitto : to Shops
@field #10658 = osuccess2 : goes west.
@field #10658 = action2 : 9087
@field #10658 = odrop2 : enters from the east.
@field #10658 = lock2 : 1
@succe #10658 = @switch(1,@getfield(9448,"%#_orientation"),@print(
 @tell("%#","You can't. The west exit is high above you now."),@call(10633,"each_turn")),
 @print(@tell("%#","You walk west..."),
 @tellroom(9448,"%#","%n goes west."),@move("%#",9087),
 @tellroom(9087,"%#","%n enters from the east.")
 ));
@desc #10658 =
 @switch(@getfield(9448,"%#_orientation"),1,
 @tell("%#","The western exit, to the shops, is far out of reach high above you."),
 @tell("%#","Shops, and the rest of the spaceport are in that direction."));
 @call(10633,"each_turn");

east (dbref #10659)

@open east;e = nowhere
@field #10659 = exitto : to ??
@succ #10659 = @switch(1,@getfield(9448,"%#_orientation"),@print(
  @tell("%#","You cannot leave the safety of this sideways gravity zone
   that way. You'll have to use the maintenance portal and go \"up\".")
 ),@or(@eq("%#",@location(10362)),@eq("%#",@location(11163)),
   @eq("%#",@location(11164)),@eq("%#",@location(11165)),
   @eq("%#",8796)),@print(
  @tellroom(@location("%#"),"%#","%s approaches the east door, and a hidden
  sensor sweeps over %o and %p possessions. A hollow voice says
  \"Authorization Approved\", the door slides open, %s steps through,
  and the door closes behind %o."),
  @tell("%#","As you approach the east door, a hidden sensor sweeps over
  you and your possessions. A hollow voice says \"Authorization Approved\",
  and the door slides open. Stepping inside, you walk east through a narrow plywood corridor, your
 footsteps echoing your presence. It's rather dark in here, the only
 light comes from hundreds of tiny Christmas tree lights dangling from
 unseen wires. Through square cutouts in the walls, you see work
 progressing on an arrangement of upside-down pyramids called the
 \"Warpish Estates\". At the end of the corridor is a heavy black
 curtain. You push it aside and enter..."),
  @move("%#",9623)
 ),@print(
  @tellroom(@location("%#"),"%#","%s approaches the east door, and a hidden
  sensor sweeps over %o and %p possessions. A hollow voice says
  \"Authorization Denied\"."),
  @tell("%#","As you approach the east door, a hidden sensor sweeps over
  you and your possessions. A hollow voice says \"Authorization Denied\"."),
  @call(10633,"each_turn")
 ));

@desc #10659 =
 @switch(@getfield(9448,"%#_orientation"),1,
 @tell("%#","Since you're standing on the east wall, the eastern door
 is now in your \"floor\", but it's outside the
 area of sideways gravity you currently occupy. If you tried to walk
 over there, you'd fall most of the way, injuring yourself badly, or worse."),
 @tell("%#","The east door is labelled \"Authorized Access Only\"."));
 @call(10633,"each_turn");

up (dbref #11166)

@open up;u;maintenance portal;portal;enter maintenance portal;enter portal = nowhere
@field #11166 = exitto :
@desc #11166 = @switch(@getfield(9448,"%#_orientation"),1, @tell("%#","A maintenance portal in the ceiling is right beside you."), @tell("%#","High up, in the ceiling, near the base of the sideways waterfall, is a circle that might be a hatch or portal of some kind. No way to get there from here, though.")); @call(10633,"each_turn");
@succ #11166 = @switch(@getfield(9448,"%#_orientation"),1,@print(
 @switch(@getfield(9567,"ismoved"),0,@print(
  @setfield(9567,"ismoved",1),
  @tellroom(8893,"","Without warning, one of the sofa rolls away from the wall,
  revealing a circular maintenance portal!")
 )),
 @tell("%#","At your touch, the maintenance portal opens, and you awkwardly
 scramble sideways and up through it."),
 @tellroom(9448,"%#","%n somehow opens a circular portal in the ceiling
 and scrambles awkwardly up through it."),
 @move("%#",8893),
 @tellroom(8893,"%#","The portal in the floor opens, and %n climbs up through
 it, into the room. The portal closes."),
 @tell("%#","Gravity lurches sideways again as you enter.
 The maintenance portal closes.")),
 @print(@tell("%#","You are nowhere near the portal in the ceiling.
 You can't reach it from here."),@call(10633,"each_turn")));

bus (dbref #11237)

@create bus
@lock #11237 = #-1
@set #11237 = expert
@desc #11237 = @tell("%#","You look at the \"bus\". It looks like a giant
 cold capsule with windows; the front half is white, the back half
 is glowing ultraviolet. The side of the bus reads \"Catharsis Buslines
 - We Take Others To The Warp!\". Inside, you see the driver, a member
 of the Vacuum race, waiting for passengers.");
 @call(10633,"each_turn");
@fail #11237 = @tell("%#","Carry a bus? You and which army?"); @call(10633,"each_turn");

enter bus (dbref #11238)

@action enter bus;board bus;ride bus = bus : nowhere
@succe #11238 =
 @switch(@getfield(9448,"%#_orientation"),1,
 @tell("%#","Your current orientation puts the bus high above you. You can't reach the bus from here, let alone enter it."),
 @tell("%#","The Vacuum alien stops you from entering the tour bus.%cHoov the Vacuum says (to you), \"Sorry, but the Warpish Estates ain't even been built yet. If I gotta wait, you gotta wait.\""));
 @call(10633,"each_turn");

Trader's Treasures (dbref #10890)

@dig Trader's Treasures
@zone #10890 = #10719
@field #10890 = exit_0 : 10892
@field #10890 = nexits : 1
@desc #10890 = @tell("%#","This is the Trader's store, an upscale antiques and curio shop, expensively furnished and well lit. You'll probably need a few lucre to buy anything here!"); @call(10633,"each_turn");

southeast (dbref #10892)

@open southeast;se;out;exit = #9087
@odrop #10892 = enters from Trader's Treasures.
@field #10892 = exitto : back to Shops
@osucc #10892 = leaves the shop.
@succe #10892 = You leave the shop.
@desc #10892 = @tell("%#","The exit out of the store is to the southeast."); @call(10633,"each_turn");
@field #10892 = lock2 : 1
@field #10892 = action2 : 9087
@field #10892 = osuccess2 : leaves the shop.
@field #10892 = odrop2 : %w in from Trader's Treasures.

display case (dbref #10922)

@create display case;display;case;glass case;dc
@fail #10922 = @tell("%#","Forget that. The display case is part of the store, and is probably guarded by a security system as well."); @call(10633,"each_turn");
@lock #10922 = #-1
@desc #10922 = @tell("%#","The display case contains several curious and expensive objects."); @call(10633,"each_turn");

zorkmid coin (dbref #10708)

@create zorkmid coin;zorkmid;coin;zm coin;zm;zc
@fail #10708 = [TODO: Sorry, the code for buying the coin hasn't been written yet. But I can tell you that you'll need lucre to buy it when the code has been written.]
@lock #10708 = #-1
@zone #10708 = #10719
@desc #10708 = @tell("%#","It's a rare ten-zorkmid coin, from the Great Underground Empire. It bears the image of Lord Dimwit Flathead the Excessive, the motto \"In Frobs We Trust\", and the year 769 G.U.E."); @call(10633,"each_turn");

butterfly sculpture (dbref #11024)

@create butterfly sculpture;butterfly;butterflies;sculpture;bs
@desc #11024 = [TODO: Describe butterfly sculpture.]
@lock #11024 = #-1
@zone #11024 = #10719
@link #11024 = #10890
@fail #11024 = [TODO: Sorry, the code for buying the sculpture hasn't been written yet. But I can tell you that you'll need lucre to buy it when the code has been written.]

London's of Lloyd (dbref #10893)

@dig London's of Lloyd
@zone #10893 = #10719 
@field #10893 = exit_0 : 10895
@field #10893 = nexits : 1
@desc #10893 = @tell("%#","The Lloyd sells insurance policies from this
 modest shop. It's furnished like a upper middle-class living-room and
 is spotless, except for the sandpit in one corner of the shop. Heavy
 curtains on the storefront's windows provide a
 measure of privacy from the hustle and bustle of the spaceport.");
 @call(10633,"each_turn");

southwest (dbref #10895)

@open southwest;sw;out;exit = #9087
@odrop #10895 = enters from London's of Lloyd.
@field #10895 = exitto : back to Shops
@osucc #10895 = leaves the shop.
@succe #10895 = You leave the shop.
@desc #10895 = @tell("%#","The exit out of the store is to the southwest."); @call(10633,"each_turn");
@field #10895 = lock2 : 1
@field #10895 = action2 : 9087
@field #10895 = osuccess2 : leaves the shop.
@field #10895 = odrop2 : %w in from London's of Lloyd.

curtains (dbref #11268)

@create curtains;heavy curtains
@set #11268 = dark
@lock #11268 = #-1
@desc #11268 = @tell("%#","The heavy curtains are striped in vertical
 bands of dark greens and muted gold. Impressive, without being too
 distracting."); @call(10633,"each_turn");
@field #11268 = pull : @call(11268,"search");
@field #11268 = push : @call(11268,"search");
@field #11268 = search : @switch(@location(11729),11718,@print(
 @move(11729,"%#"),
 @tell("%#","You move the curtains to one side, and a tarnished lucre
 falls from them to the floor! You quickly pick it up before the Lloyd notices."),
 @tellroom(@location("%#"),"%#","%n moves the curtains to one side,
 and a tarnished lucre falls from them to the floor!
 %S quickly picks it up before the Lloyd notices.")),@print(
 @tell("%#","You move the curtains to one side."),
 @tellroom(@location("%#"),"%#","%n moves the curtains to one side."))); @call(10633,"each_turn");

tarnished lucre (dbref #11729)

@create tarnished lucre;lucre;tarnished coin;coin;tl
@field #11729 = comment : This is lucre hidden by London's curtain.
@field #11729 = reset : @move(11729,11718);
@zone #11729 = #10719
@desc #11729 = @getfield(10710,"description")

sandpit (dbref #11730)

@create sandpit;sand pit;sandbox;sand box;sand;pit;box;dirt;loam;earth
@lock #11730 = #-1
@set #11730 = dark
@link #11730 = #10893
@zone #11730 = #10719
@fail #11730 = @tell("%#","The sandpit is part of the shop floor."); @call(10633,"each_turn");
@desc #11730 = @tell("%#","It's filled with a mixture of fine white sand
 and dark rich loam. It's almost as upscale as a sandpit can get, but that
 doesn't explain what it's doing in an insurance office in the first
 place."); @call(10633,"each_turn");
@field #11730 = search : @switch(@location(10717),11718,@print(
 @move(10717,"%#"),
 @tell("%#","You dig about in the sandpit and uncover a filthy lucre!
 %cThe Lloyd frowns, but then smiles and says to you, \"You may keep
 that if you wish.\" So you take it."),
 @tellroom(@location("%#"),"%#","%n digs about in the sandpit and
 uncovers a filthy lucre!
 %cThe Lloyd frowns, but then smiles and says to %n, \"You may keep
 that if you wish.\" So %s takes it.")
 ),@print(
 @tell("%#","You dig about in the sandpit, but find nothing."),
 @tellroom(@location("%#"),"%#","%n digs about in the sandpit, but finds nothing."))); @call(10633,"each_turn");
--
TEST
@field #11730 = search : @switch(@location(10717),11718,@print(@move(10717,"%#"), @tell("%#","You dig about in the sandpit and uncover a filthy lucre!%cThe Lloyd frowns, but then smiles and says to you, \"You may keep that if you wish.\" So you take it."), @tellroom(@location("%#"),"%#","%n digs about in the sandpit and uncovers a filthy lucre!%cThe Lloyd frowns, but then smiles and says to %n, \"You may keep that if you wish.\" So %s takes it.")),@print(@tell("%#","You dig about in the sandpit, but find nothing."), @tellroom(@location("%#"),"%#","%n digs about in the sandpit, but finds nothing."))); @call(10633,"each_turn");
==

filthy lucre (dbref #10717)

@create filthy lucre;lucre;filthy coin;coin;fl
@field #10717 = comment : This is the lucre hidden in London's sandpit.
@field #10717 = reset : @move(10717,11718)
@zone #10717 = #10719
@desc #10717 = @getfield(10710,"description")

The Healing Hut (dbref #10896)

@dig The Healing Hut
@zone #10896 = #10719
@field #10896 = exit_0 : 10900
@field #10896 = nexits : 1
@field #10896 = smell : The air here is clean, but perhaps a tad too dry.
@desc #10896 = @tell("%#","The Healing Hut is austere in the extreme, very very clean, and decorated exclusively in pure white and various shades of green. Behind a counter, the Healer stands ready to serve your health needs (in exchange for your lucre, of course)."); @call(10633,"each_turn");

northeast (dbref #10900)

@open northeast;ne;out;exit = #9087
@odrop #10900 = enters from The Healing Hut.
@field #10900 = exitto : back to Shops
@osucc #10900 = leaves the clinic.
@succe #10900 = You leave the clinic.
@desc #10900 = @tell("%#","The exit out of the store is to the northeast."); @call(10633,"each_turn");
@field #10900 = lock2 : 1
@field #10900 = action2 : 9087
@field #10900 = osuccess2 : leaves the clinic.
@field #10900 = odrop2 : %w in from The Healing Hut.

counter (dbref #10243)

@create counter
@fail #10243 = @tell("%#","The counter is built into the floor of the store."); @call(10633,"each_turn");
@lock #10243 = #-1
@desc #10243 = @tell("%#","It's a spotlessly clean white counter with light green trim."); @call(10633,"each_turn");

Gratis Goodies (dbref #10898)

@dig Gratis Goodies
@zone #10898 = #10719
@field #10898 = exit_0 : 10901
@field #10898 = nexits : 1
@desc #10898 = @tell("%#","This is the Philanthropist's store; a cluttered affair that you hope isn't a fire hazard. You can take anything from here for free, but it might be difficult to find something useful amongst the junk."); @call(10633,"each_turn");

northwest (dbref #10901)

@open northwest;nw;out;exit = #9087
@odrop #10901 = enters from Gratis Goodies.
@field #10901 = exitto : back to Shops
@osucc #10901 = leaves the shop.
@succe #10901 = You leave the shop.
@desc #10901 = @tell("%#","The exit out of the store is to the northwest."); @call(10633,"each_turn");
@field #10901 = lock2 : 1
@field #10901 = action2 : 9087
@field #10901 = osuccess2 : leaves the shop.
@field #10901 = odrop2 : %w in from Gratis Goodies.

used popsicle stick (dbref #9622)

@create used popsicle stick;popsicle stick;stick;ups
@link #9622 = #10898
@field #9622 = reset : @move(9622,10898);
@zone #9622 = #10719
@osucc #9622 = picks up the used popsicle stick.
@succe #9622 = @tell("%#","You pick up the used popsicle stick.");
 @call(10633,"each_turn");
@odrop #9622 = drops a used popsicle stick.
@drop #9622 = @tell("%#","You drop the used popsicle stick.");
 @call(10633,"each_turn");
@desc #9622 = @tell("%#","This is a yucky used popsicle stick. No wonder
 that the Philanthropist has no problem giving it away. (And hopefully,
 it will never be needed for yet another one of those
 key-in-the-other-side-of-the-keyhole, newspaper-under-the-door puzzles.)");
 @call(10633,"each_turn");

spoiled egg (dbref #11236)

@create spoiled egg;egg
@zone #11236 = #10719
@link #11236 = #10898
@field #11236 = reset : @move(11236,10898);
@desc #11236 = @tell("%#","This, ahem, \"magnificient and truly incredible\"
 spoiled egg is an, er, amazing replica of the spoiled egg obtained by Prince
 Alexander in King's Quest V. The spoiled egg has a slightly yellowed shell
 that bulges in spots from the pressure of the gases inside.");
 @call(10633,"each_turn");
@odrop #11236 = drops a spoiled egg.
@drop #11236 = @tell("%#","You drop the spoiled egg.");
 @call(10633,"each_turn");
@osucc #11236 = picks up the spoiled egg.
@succe #11236 = @tell("%#","You pick up the spoiled egg.");
 @call(10633,"each_turn");
@field #11236 = smell : Smells like sulphur. Ugh.
@field #11236 = osmell : smells the spoiled egg and frowns.

salad shooter (dbref #11373)

@create salad shooter;shooter;ss
@odrop #11373 = drops a salad shooter.
@drop #11373 = @tell("%#","You drop the salad shooter.");
 @call(10633,"each_turn");
@field #11373 = reset : @move(11373,10898);
@osucc #11373 = picks up the salad shooter.
@succe #11373 = @tell("%#","You pick up the salad shooter.");
 @call(10633,"each_turn");
@zone #11373 = #10719
@desc #11373 = @tell("%#","The salad shooter might once have chopped up
 vegetables and more for a mighty fine salad, but someone has removed all
 of its blades, rendering it useless. [from Arrival, or Attack of the
 B-Movie Cliches]"); @call(10633,"each_turn");

earmuffs (dbref #781)

@create earmuffs;muffs;pair of earmuffs
@drop #781 = @tell("%#","You drop the pair of earmuffs."); @call(10633,"each_turn");
@odrop #781 = drops a pair of earmuffs.
@field #781 = reset : @move(781,10898);
@succe #781 = @tell("%#","You pick up the pair of earmuffs."); @call(10633,"each_turn");
@osucc #781 = picks up a pair of earmuffs.
@zone #781 = #10719
@desc #781 = @tell("%#","According to Legend, these dirty earmuffs were once owned by Eric the Unready until he lost them while journeying to an enchanted forest."); @call(10633,"each_turn");
@field #781 = smell : The earmuffs smell somewhat musty, as if they were left outdoors for a month and never washed.