From 3a7e5fe18b87c2374bc7ea8ea96f58df26c94025 Mon Sep 17 00:00:00 2001 From: Jason Self Date: Mon, 23 Aug 2021 20:04:05 -0700 Subject: [PATCH] Update to serial 210823 --- src/forest.inf | 20 ---- src/snowed-in.inf | 263 +++++++++++++++++++++++++++++++++++++++++++--- 2 files changed, 249 insertions(+), 34 deletions(-) delete mode 100644 src/forest.inf diff --git a/src/forest.inf b/src/forest.inf deleted file mode 100644 index f621e7f..0000000 --- a/src/forest.inf +++ /dev/null @@ -1,20 +0,0 @@ -! Copyright (C) 2021 Jason Self -! -! 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/ -Class Forest; - -Object snow "snow" forest - with name 'snow' 'flake' 'flakes', - found_in forest, - has scenery; diff --git a/src/snowed-in.inf b/src/snowed-in.inf index 6929991..c0b9f00 100644 --- a/src/snowed-in.inf +++ b/src/snowed-in.inf @@ -15,6 +15,8 @@ Global lantern_fuel_left = 20; Global body_temperature = 20; Global cabin_has_electricity = 1; +Global forest_location = 1; +Constant NO_SCORE; Constant DEATH_MENTION_UNDO; Constant Story "Snowed In"; Constant Headline @@ -35,8 +37,7 @@ Constant Headline Include "parser"; Include "verblib"; Release 0; -Serial "210617"; -Include "src/forest.inf"; +Serial "210823"; Object mainroom "Main Room" with description @@ -114,7 +115,8 @@ Object coffeetable "coffee table" mainroom Object lantern "copper lantern" coffeetable with name 'lantern' 'copper' 'lamp', description - "This is an exceptionally beautiful lantern. About eleven + "This is an exceptionally beautiful lantern, made of + fired copper, and polished until it shines. About eleven inches high, with a base of about 5 inches or so in diameter and a large, brass-closed hook at the top. A rainbow of unique colors run through the copper. The @@ -255,6 +257,15 @@ Object office "Office" broken, letting in the cold air from outside. Chunks of drywall and insulation cover the floor. The desk has a bullet hole through the middle.", + before [; + Go: + if (noun == e_obj) { + if (snowshoes has worn) + print_ret + "You can't fit through the window while wearing the snow + shoes."; + } + ], w_to mainroom, e_to window, has light; @@ -439,7 +450,7 @@ Object bed "bed" bedroom has scenery supporter; Object suitcase "suitcase" bedroom - with name 'suitcase', + with name 'suitcase' 'case', with description "The suitcase is made of a light metallic material that you can't quite make out. The color of it is somewhere @@ -544,33 +555,257 @@ Object snowshoes "snowshoes" bedroom daemon [; if (location ~= mainroom && location ~= office && location ~= kitchenette && location ~= bedroom && location ~= thedark && - snowshoes hasnt worn) { + location ~= eastofcabin && snowshoes hasnt worn) { deadflag = 3; } ], has pluralname clothing; -Forest southofcabin "South Of Cabin" +Object southofcabin "South Of Cabin" with description [; - print "The wind is howling, and there's snow flying everywhere."; + print + "The wind is howling, and there's snow flying + everywhere.^"; if (snowsuit hasnt worn) print - " It's really cold and - you're not dressed for this weather."; + "^It's really cold and you're not dressed for + this weather.^"; if (frontdoor has open) { check_for_cabin_lighting(); } ], n_to frontdoor, + s_to forest, e_to eastofcabin, w_to westofcabin, has light; +Object truckspot "Forest" + with description + "The blizzard is still going on. You don't think it's + letting up anytime soon. There is a blue and white + pickup truck here. It looks like it got stuck in the snow + and is slowly being covered by it. The windows are iced + up and you can't see inside.", + before [; + Go: + PlayerTo(forest); + ]; + +Object truck "blue and white pickup truck" truckspot + with name 'pickup' 'truck' 'door', + with description + "The blue and white pickup truck looks old and battered. + The paint has chipped and faded. The windows are iced up + and you can't see inside.", + before [; + Take, Pull, Push, PushDir, Turn: + print_ret (The) self, " is too heavy for that."; + Search: + print_ret + "The windows are iced up and you can't see + inside."; + Enter, Open, GoIn: + print_ret (The) self, " is frozen shut."; + ], + has scenery supporter enterable openable; + +[ print_forest_description; + if (location ~= thedark) { + switch (forest_location) { + 1: + print_ret + "It's not getting any easier to move in this + blizzard. You can barely see five feet ahead of you. + The wind is really strong. You try to remember the + survival tips you've read on the internet, but + frankly, you don't remember most of them right now. + You just want this awful nightmare to end."; + 2: + print_ret + "You can't see anything through the blizzard. The + snow is drifting and piling up around you, making + movement almost impossible. You can't see your hand + in front of your face. The wind is bitterly cold. The + situation is looking very grim. Your life feels as if + it is slowly ebbing away in the relentless grip of + the snowstorm."; + 3: + print_ret + "You plow through the heavy snowfall. You're cold, + tired, miserable, and desperate to get out of this + mess. The wind is howling like a banshee. You can + barely keep moving. You wish you had the powers of a + superhero right now. You try to persevere. You push + on despite the bitter cold and the heavy snowfall as + you come to a fork. There are two ways to go here, + one is going up a hill to the south. The other way is + continuing through the woods to the north."; + 4: + print_ret + "You trudge through the snow. The wind is howling + louder than ever. It's almost as if you're lost in a + white, endless void."; + 5: + print_ret + "You continue your way through the snowy white void, + what with the snow piling up around you. This is + getting really old, really fast. It's hard to tell + which direction is which. You wonder if you might be + going in circles and end up wandering around forever, + never finding your way out of this white void."; + 6: + print_ret + "You wander around in the impenetrable white void. + The snowfall is still as heavy as ever. You're unsure + of which way to go. There's no left, right, backward + or forward. There's nothing but endless, unchanging + whiteness. You could be wandering aimlessly in any + direction right now and you wouldn't know the + difference."; + 7: + PlayerTo(truckspot); + 8: + print_ret + "You keep wandering through endless whiteness. It + feels like you've been wandering for hours, but + that's probably just your perception of time slipping + away. You keep trudging through the heavy snowfall, + not knowing if you're even going in any particular + direction anymore. You hope that, as long as you keep + moving, you'll eventually find a way out of this + frozen wasteland."; + 9: + print_ret + "You wander around through the white void. There's + nothing here but you, the snowfall, and the fierce + wind howling through this frozen landscape. You start + to get disoriented. You don't know if you're going in + circles or what, but you start to feel that this + frozen, lifeless landscape is sucking away your very + life force."; + 10: + print_ret + "This isn't just a place of cold and ice - it's + other-worldly. You're in danger here. You have to + keep moving. Sleep is not an option when you're in a + place like this. You have to escape. Somehow, you + know that staying here is a death sentence."; + 11: + print_ret + "The wind starts starts to pick up as it begins + howling louder than ever. You look around the barren + landscape, but there's nothing nearby except snow. + You don't even see any trees to break the force of + this terrible wind. The snowfall is still as heavy as + ever. You can barely see where you are going."; + 12: + print_ret + "The snowfall is still as heavy as ever. The wind is + howling louder than ever. You can barely see where + you are going. This place is so desolate and barren. + As you continue trudging through the snow, you wonder + if you're actually moving in the right direction."; + 13: + print_ret + "The endless snowfall makes it difficult to see where + you're going. It feels like you're lost in a maze of + snow without a map. Out of the corner of your eye, + you spot a tall, shadowy figure lingering at the edge + of your vision. When you turn to look at it directly, + however, it disappears. You think you're going mad."; + 14: + print_ret + "You continue walking. You're not sure that you're + going in the right direction but you can't stop now. + You must find a way out of this frozen wasteland. + There has to be something here besides endless snow. + You won't give up. You can't give up."; + 15: + print_ret + "You hear a horrible howl in the distance or is it + the wind? Looking around you see nothing in this + barren landscape but snow. You're not sure what to + make of it, but you don't want to stick around to + find out. You keep walking. The wind is really + picking up now and the snowfall is getting heavier."; + 16: + print_ret + "The wind is now a shrieking banshee, freezing and + relentless, as it throws the snow into your face, + blinding you. Every step you take is hard-fought. The + whole world is white. You can't see anything, but you + must keep going. There is no choice. You have no idea + where you are."; + 17: + print_ret + "The blizzard rages, but you continue to press on. + It's hard to walk against the brutal winds. Every + step is an effort. You can barely see anything, and + you stumble forward. You're determined to live but + the blizzard doesn't seem to care whether you live or + die. It just keeps howling and shrieking."; + 18: + print_ret + "The wind screams in your ears and you can't see + anything. It's as if you're in a sea of white. You + trudge on and try to keep your spirits up and not let + the snowstorm get to you. The wind knocks you down on + your hands and knees. You get back up, but you're + slipping and sliding all over the place."; + 19: + print_ret + "Can't go back. Can't go forward. You can't even see + where you are. The snowstorm has made it impossible + to see anything more than a few feet in front of you. + Nothing makes any sense and you feel like you're + starting to go in circles."; + 20: + print_ret + "You hope you're going the right way. You can't let + the snowstorm get the best of you. You have to keep + going. As you walk you try to keep your mind occupied + with anything other than the storm. You really have + no idea how far you've come or in what direction."; + 21: + print_ret + "You keep walking and walking. You can't tell where + the white sky and white ground begin and end. You + don't even know if you're walking in a circle or not. + The snowfall is so thick that you can barely see your + hand if you hold it right in front of your face."; + 22: + deadflag = 2; + print_ret + "You see something in the distance but can't make it + out. You walk toward it to find out that it's the + hotel. You collapse in the lobby as the hotel staff + rush over to you."; + } + } +]; + +Object forest "Forest" + with description [; + print_forest_description(); + ], + before [; + Go: + if (location == thedark) { + DarkToDark(); + } + if (noun == d_obj || noun == u_obj) { + print_ret "You can't go that way."; + } + forest_location = forest_location++; + ], + cant_go print_forest_description; + [ check_for_cabin_lighting; if (lightbulb has on) { print - "The light from inside the cabin only penetrates - a few feet from the building. "; + "The light from inside the cabin only penetrates a few + feet from the building. "; } else if (lantern in player && lantern has on) { @@ -589,7 +824,7 @@ Forest southofcabin "South Of Cabin" } ]; -Forest eastofcabin "East Of Cabin" +Object eastofcabin "East Of Cabin" with description [; print "It's dark outside. "; check_for_cabin_lighting(); @@ -598,7 +833,7 @@ Forest eastofcabin "East Of Cabin" s_to southofcabin, has light; -Forest westofcabin "Westh Of Cabin" +Object westofcabin "West Of Cabin" with description "The snow is falling so fast that you can barely see anything. You can't even be sure you're going in the right @@ -710,7 +945,7 @@ Object grue "grue" thedark if (location == mainroom || location == office || location == kitchenette || location == bedroom && self.grue_active_around_cabin == 15) { - print "^The lights flicker and suddenly go out."; + print "^The lights flicker and suddenly go out.^"; cabin_has_electricity = 0; give lightbulb ~on; give mainroom ~light; -- 2.31.1