Add key card
[the-server-room.git] / the-server-room.inf
index 2af50d38fd1ac0480759f44ea4f06ec9cbb18975..615ddb72a616e93230ba732ca5bd74b698e7df99 100644 (file)
@@ -1,6 +1,6 @@
 !% -SD
 !=========================================================================
-! Copyright (C) 2019 Jason Self <j@jxself.org>
+! Copyright (C) 2019, 2020 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
@@ -38,7 +38,7 @@
 Constant Story "The Server Room";
 Constant Headline "^An Interactive Fiction by Daniel Bartholomew.^";
 Release 1;
-Serial "190908";
+Serial "201027";
 Constant MAX_SCORE = 6;
 Include "parser";
 Include "verblib";
@@ -65,6 +65,39 @@ Object  break_room "Break Room"
             you have work to do.",
   has   light;
 
+Object  tv "television" break_room
+  with  description
+            "It looks like a cheap, generic flat screen television
+            with an edge-to-edge matte screen. You see no buttons on
+            it. There should be a remote control somewhere.",
+        name 'tv' 'television' 'telly',
+        before [;
+          SwitchOn:
+            print_ret
+                "The television can only be turned on using the
+                remote.";
+        ],
+  has   container openable scenery switchable;
+
+Object  whitecouch "white couch" break_room
+  with  description
+            "With a smooth and modern design, this looks to be a luxurious couch.
+            It is extremely durable and easy to clean and maintain. Offering
+            enough room to sit or lay, it looks very soft and comfortable.",
+        name 'white' 'couch' 'sofa',
+        before [;
+          Take, Pull, Push, PushDir:
+            print_ret (The) self, " is too heavy for that.";
+        ],
+  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
@@ -91,17 +124,30 @@ Object  microwave "microwave" counter
             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
@@ -153,6 +199,15 @@ Object  hallway "Hallway"
         w_to restroom,
   has   light;
 
+Object  keycard "key card" break_room
+  with  description
+            "The key card is thin and black with a magnetic strip 
+            down the middle. The company logo is laser-etched into 
+            the plastic on one side. 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
@@ -239,6 +294,7 @@ Object  tray "tray" server_room
 
 [ 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
@@ -254,4 +310,4 @@ Object  tray "tray" server_room
 !=========================================================================
 ! Standard and Extended Grammar
 Include "grammar";
-!=========================================================================
\ No newline at end of file
+!=========================================================================