1 ! Copyright (C) 2019 Jason Self <j@jxself.org>
3 ! This file is free software: you may copy, redistribute gand/or
4 ! modify it under the terms of the GNU Affero General Public License
5 ! as published by the Free Software Foundation, either version 3 of
6 ! the License, or (at your option) any later version.
8 ! This file is distributed in the hope that it will be useful, but
9 ! WITHOUT ANY WARRANTY; without even the implied warranty of
10 ! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11 ! Affero General Public License for more details.
13 ! You should have received a copy of the GNU Affero General Public
14 ! License along with this file. If not, see https://gnu.org/licenses/
15 Global guardscalled = 0;
16 Constant DEATH_MENTION_UNDO;
17 Constant MAX_SCORE = 7;
18 Constant Story "Homeland";
20 "^A work of interactive fiction.
21 ^If you get stuck try typing HELP.
22 ^Ongoing development: https://jxself.org/git/?p=homeland.git
23 ^Send bugs and feedback by email to j@@64jxself.org.
24 ^IFID AC0898CB-0668-4853-9EB9-757958D4AF56
25 ^Copyright (C) 2019 Jason Self
26 ^You can change and share this game under the terms of the GNU
27 Affero General Public License as published by the Free Software
28 Foundation (FSF), either version 3 of the License, or (at your
29 option) any later version published by the FSF. See the GNU Affero
30 General Public License for more details.^^You should have received
31 a copy of this game's source code along with a copy of the GNU
32 Affero General Public License so that you can know your rights.
33 If not, contact the place you got it from.^^";
38 Include "src/objects/kitchen.inf";
39 Include "src/objects/livingroom.inf";
40 Include "src/objects/bedroom.inf";
41 Include "src/objects/grandlivingroom.inf";
42 Include "src/objects/sidewalk.inf";
43 Include "src/objects/frontporch.inf";
44 Include "src/objects/neighborlivingroom.inf";
45 Include "src/objects/backyard.inf";
46 Include "src/objects/neighborkitchen.inf";
47 Include "src/objects/campsite.inf";
51 print "To Be Continued";
55 print ", earning you the rank of ";
76 print "^It happened again.^^";
78 "While reading the morning newspaper, there was another small
79 explosion from your neighbor's home. This time you were able
80 to see a series of three bright blue sparks that your friends
81 were talking about from your kitchen window through the
82 curtains covering their living room windows.^^";
84 "You crane your neck out the window to look, but all is
85 quiet. ~What's going on over there?~ you wonder.^^";
91 "^If you need help try some of the commands from:
92 ^http://pr-if.org/doc/play-if-card/^";
96 print "Nothing obvious happens.^";
101 if (location == kitchen && window hasnt open) {
103 "It might be nice to open that window and get some
106 if (location == kitchen && window has open) {
108 "That window seems almost large enough to climb
111 if (location == livingroom || location == bedroom || location ==
112 sidewalk || location == frontporch && window hasnt open) {
114 "Maybe you should go back to the kitchen and try the
115 HELP command again.^";
117 if (location == livingroom || location == bedroom || location ==
118 sidewalk || location == frontporch && window has open) {
120 "That window in your kitchen seems just large enough to
123 if (television hasnt on && television.watch_count < 3) {
124 print "I wonder what's on TV?^";
126 if (television has on && television.watch_count < 3) {
128 "The TV show U.S. News And Grue Report is usually very
131 if (TestScope(poker)) {
133 "The poker looks like it could make an effective
159 Verb 'snort' = 'smell';
165 Verb 'stick' = 'put';
167 Verb 'thrust' = 'put';
170 * 'through' / 'out' / 'via' noun -> Go;
173 * 'through' / 'out' / 'via' noun -> Go;
176 * 'through' / 'out' / 'via' noun -> Go;
179 * 'through' / 'out' / 'via' noun -> Go;
182 * 'through' / 'out' / 'via' noun -> Go;
185 * noun 'with' noun -> Attack;