!% -SD
!=========================================================================
-! Copyright (C) 2019 Jason Self <j@jxself.org>
+! Copyright (C) 2019, 2020, 2021 Jason Self <j@jxself.org>
!
! This program is free software: you can redistribute it and/or modify
! it under the terms of the GNU Affero General Public License as
! <https://www.gnu.org/licenses/>.
!=========================================================================
Constant Story "The Server Room";
-Constant Headline "^An Interactive Fiction by Daniel Bartholomew.^";
+Constant Headline "^An Interactive Fiction by Daniel Bartholomew
+with modifications by Jason Self.^";
Release 1;
-Serial "190908";
+Serial "210202";
Constant MAX_SCORE = 6;
Include "parser";
Include "verblib";
Object break_room "Break Room"
with description
- "This break room is a calm, quiet and peaceful for people
- to unwind and eat. Well kept and organized, the area is
- clean and inviting. A large television is mounted to one
- of the walls, next to a refrigerator. Even though no
- one's around the smell of a pleasant coffee blend still
+ "This break room is a calm, quiet and peaceful place for
+ people to unwind and eat. Well kept and organized, the
+ area is clean and inviting. A large television is mounted
+ to one of the walls, next to a refrigerator. Even though
+ no one's around the smell of a pleasant coffee blend still
hangs in the air. A cool-looking counter and white couch
take up another wall. The remaining walls have posters of
various sports teams of the previous four years. East is
],
has scenery static supporter enterable;
+Object posters "posters" break_room
+ with description
+ "Fold outs from a japanese sport fanzine, the posters
+ really show off the players and game.",
+ name 'sport' 'sports' 'poster' 'posters',
+ has scenery;
+
Object fridge "refrigerator" break_room
with description
"This refrigerator makes a statement with a sleek, modern
like a real workhorse. It's compact, quiet, and works
great.",
name 'microwave' 'micro',
+ before [;
+ Receive:
+ print "Put ";
+ print (a) noun;
+ print_ret
+ " into the microwave? Maybe you should come with a
+ warning label because you contain more than a trace
+ amount of nut.";
+ ],
has container openable;
Object table "table" break_room
- with description "It's a table. Were you expecting something else?",
+ with description "The table is made of strong wood. It looks to
+ be about 6 feet across and could probably sit 6
+ to 8 people. It's white, round and seems very
+ functional as a table despite looking quite
+ heavy.",
name 'table',
before [;
Take:
"Let me spell it out for you: it is a T A B L E and you
are NOT Superman.";
],
- has supporter;
+ has scenery supporter;
Object backpack "backpack" table
with description
Object hallway "Hallway"
with description
- "Bereft of features, adornment or even adequate lighting,
- this hallway is as plain as they come. Doors lead east
- back to the break room, north to the server room, or
- west to the restrooms.",
+ "The hallway is long and rectangular, and the walls are
+ painted a cool blue and the floor is carpeted. One of the
+ long walls is decorated with a few paintings, all of
+ different scenes from around the city. The wall opposite
+ the paintings has a glass display case. Doors lead east
+ back to the break room, north to the server room, or west
+ to the restrooms.",
e_to break_room,
n_to
"You use your key card to open the server room door but
w_to restroom,
has light;
+Object carpet "carpet" hallway
+ with description
+ "The carpet is a deep red color and very well kept. It
+ covers the floor of the entire hallway. It has an
+ intricate pattern of woven vines, flowers and leaves.",
+ name 'carpet' 'floor',
+ has scenery;
+
+Object paintings "paintings" hallway
+ with description
+ "There's a painting of the city bridge with a young girl
+ standing on it and looking out to the horizon, another of
+ a large three-masted ship tied up at the docks with
+ several people on the deck looking out over the water,
+ one of an old style saloon with a bucking horse outside.",
+ name 'paint' 'painting' 'paintings',
+ before [;
+ Take, Pull, Push, PushDir:
+ print_ret (The) self, " are firmly attached to the wall.";
+ ],
+ has scenery pluralname;
+
+Object case "glass display case" hallway
+ with description
+ "The display case is large and made of glass.",
+ name 'glass' 'display' 'case',
+ before [;
+ Take, Pull, Push, PushDir:
+ print_ret (The) self, " is too heavy for that.";
+ ],
+ has container openable scenery transparent;
+
+Object award "crystal award" case
+ with description
+ "It's an award the company won. It's made of extremely
+ ornate crystal, in fact more so than any other crystal
+ award you've ever seen; this is probably because it's the
+ only one you've ever seen up close. The bottom is a solid
+ crystal octagon and there are actually eight more little
+ crystals that act as legs supporting the main crystal
+ octagon.",
+ name 'crystal' 'award';
+
+Object keycard "key card" break_room
+ with description
+ "The key card is thin and black with a magnetic strip
+ down the middle. The card is slightly bendable and easy
+ to grip.",
+ name 'key' 'card' 'keycard',
+ has ;
+
Object restroom "Restroom"
with description
"This average-sized, square restroom has a sink set into a
[ Initialise;
location = break_room;
+ move keycard to player;
"^^^^It's Saturday, a nice one at that, and you've been called in
to fix a server that's on the blink. Again.^^You've had it. This
server is going to run GNU/Linux from this day forward! The