--- /dev/null
+! Copyright (C) 2019 Jason Self <j@jxself.org>
+!
+! This file is free software: you may copy, redistribute and/or
+! modify it under the terms of the GNU Affero General Public License
+! as published by the Free Software Foundation, either version 3 of
+! the License, or (at your option) any later version.
+!
+! This file is distributed in the hope that it will be useful, but
+! WITHOUT ANY WARRANTY; without even the implied warranty of
+! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+! Affero General Public License for more details.
+!
+! You should have received a copy of the GNU Affero General Public
+! License along with this file. If not, see https://gnu.org/licenses/
+
+Object livingroom "Livingroom"
+ with description
+ "You are in a modestly furnished livingroom. Pictures
+ hang from the walls. You can hear the sound of vehicles
+ driving by outside. The kitchen is to the west. The front
+ door is to the east. Your bedroom is to the south.",
+ before [;
+ Listen:
+ print "You can hear the sound of vehicles driving by outside.^";
+ return true;
+ ],
+ n_to
+ "Since when did you get the ability to walk through
+ walls? The kitchen is to the west. The front door is to
+ the east. Your bedroom is to the south.",
+ s_to bedroom,
+ w_to kitchen,
+ e_to frontdoor,
+ has light;
+
+Object picture "pictures" livingroom
+ with description
+ "The pictures in the room consist of a landscape painting
+ showing a strangely geometric mountain, another of a
+ still life painting of a table laid out with a feast and
+ the third is a portrait of an unknown man. He has a full
+ beard, is wearing a black robe and no shoes. On his head
+ is a large 1970s-era hard disk platter.",
+ name 'picture' 'photo' 'photos' 'frame' 'frames' 'pictures'
+ 'image' 'images',
+ Before [;
+ Take:
+ print_ret
+ "They look so nice, perhaps it's better to leave them
+ where they are.";
+ ],
+ has scenery pluralname;
+
+Object man "man" livingroom
+ with description "It's a painting of Richard Stallman dressed as
+ St IGNUcius.",
+ name 'man' 'disk' 'hard' 'platter' 'robe' 'rms' 'Richard' 'Stallman'
+ 'robe' 'black' 'image' 'images',
+ Before [;
+ Take:
+ print_ret
+ "The painting looks so nice, perhaps it's better to
+ leave it where it is.";
+ ],
+ has scenery;
+
+Object television "television" livingroom
+ with name 'television' 'tv',
+ description
+ "It's big, gray, and one of those old-fashioned CRT
+ models. It looks very heavy.",
+ watch_count 0,
+ before [;
+ Listen, Examine:
+ if (television has on) {
+ self.watch_count = self.watch_count + 1;
+ switch (self.watch_count) {
+ 1:
+ print
+ "It's big, gray, and one of those
+ old-fashioned CRT models. It looks very
+ heavy.^The TV is currently switched on. Your
+ favorite news program is on: U.S. News And
+ Grue Report.^The news anchor is saying ~In
+ other news, authorities continue to
+ investigate the missing persons case.~^";
+ score = score + 1;
+ return true;
+ 2:
+ print
+ "The news anchor continues by saying ~We're
+ told the that number of missing people is now
+ up to as many as 5.~^";
+ score = score + 1;
+ return true;
+ 3:
+ print
+ "The news anchor concludes their coverage by
+ saying ~We'll have more as the story continues
+ to develop.~^";
+ score = score + 1;
+ return true;
+ default:
+ print
+ "It's big, gray, and one of those
+ old-fashioned CRT models. It looks very
+ heavy.^The TV is currently switched on. Your
+ favorite news program is on: U.S. News And
+ Grue Report.^";
+ return true;
+ }
+ }
+ ;
+ Take, Pull, Push, PushDir:
+ print_ret (The) self, " is too heavy for that.";
+ ],
+ after [;
+ SwitchOn:
+ print
+ "The television comes to life. Your favorite news
+ program is on: U.S. News And Grue Report.^";
+ if (television hasnt visited) {
+ score = score + 1;
+ give television visited;
+ }
+ return true;
+ ],
+ has static switchable;
+
+Object couch "couch" livingroom
+ with name 'couch' 'sofa',
+ description
+ "It looks like a throwback from the 1970s but has held up
+ very well.",
+ before [;
+ Take, Pull, Push, PushDir:
+ print_ret (The) self, " is too heavy for that.";
+ ],
+ after [;
+ Enter:
+ print
+ "The couch makes a nauseating, high-pitched groan as
+ your weight is added.^";
+ return true;
+ Exit, GetOff:
+ print "The couch makes a muted snort as your weight is removed.^";
+ return true;
+ ],
+ has static supporter enterable;
+
+Object frontdoor "front door" livingroom
+ with name 'door' 'front',
+ description
+ "Cinnamon brown in color it appears to be a very solid
+ and hefty door.",
+ short_name [;
+ if (location == livingroom)
+ print "door to the outside";
+ else
+ print "door to your house";
+ return true;
+ ],
+ found_in livingroom sidewalk,
+ door_dir [;
+ if (location == sidewalk)
+ return w_to;
+ else
+ return e_to;
+ ],
+ door_to [;
+ if (location == sidewalk)
+ return livingroom;
+ else
+ return sidewalk;
+ ],
+ has scenery door openable;
\ No newline at end of file