Update to serial 221129
[snowed-in.git] / src / snowed-in.inf
index f793f2949a402db1b85f4f30eeb667362ae2ef7e..7c28a9dd8595fbf4c2224b39193c5c5c4bd33154 100644 (file)
@@ -18,6 +18,7 @@ Array UUID_ARRAY string "UUID://DE9FA2E5-4EC7-4166-9218-E56EFA1DF40F//";
 #Ifdef UUID_ARRAY;
 #Endif;
 Global lantern_fuel_left = 20;
+Global flashlight_battery_power_left = 50;
 Global body_temperature = 20;
 Global cabin_has_electricity = 1;
 Global forest_location = 1;
@@ -42,8 +43,10 @@ Constant Headline
     If not, contact the place you got it from.^^";
 Include "parser";
 Include "verblib";
-Release 3;
-Serial "220611";
+Release 4;
+Serial "221129";
+
+Include "src/hotel.inf";
 
 Object  mainroom "Main Room"
   with  description 
@@ -296,10 +299,10 @@ Object  office "Office"
                     print_ret 
                         "You can't fit through the window while 
                         wearing the snow shoes.";
-            }
-            if (eastofcabin hasnt visited) {
-                score = score + 1;
-                give office visited;
+                if (eastofcabin hasnt visited) {
+                    score = score + 1;
+                    give office visited;
+                }
             }
         ],
         w_to mainroom,
@@ -473,9 +476,8 @@ Object  bedroom "Bedroom"
   with  description 
             "This bedroom is small and cramped, and looks like a 
             major fight happened as the exterior wall has bullet 
-            holes. The bed is lying on the floor, torn to shreds. It 
-            has no sheets, just a bare mattress. The main room is to 
-            the south.",
+            holes. There's a bare mattress, torn to shreds. The main 
+            room is to the south.",
         s_to mainroom,
   has   light;
 
@@ -521,9 +523,10 @@ Object  snowsuit "snowsuit" suitcase
             }
         ],
         daemon [;
-            if (location ~= mainroom && location ~= office && location ~=
-            kitchenette && location ~= bedroom && location ~= thedark &&
-            snowsuit hasnt worn) {
+            if (location == northofcabin || location == southofcabin ||
+            location == westofcabin || location == truckspot || location
+            == backpacklocation || location == forest && snowsuit hasnt
+            worn) {
                 body_temperature = --body_temperature;
             }
             if (location == mainroom || location == office || location ==
@@ -603,9 +606,10 @@ Object  snowshoes "snowshoes" bedroom
                 knees.";
         ],
         daemon [;
-            if (location ~= mainroom && location ~= office && location ~=
-            kitchenette && location ~= bedroom && location ~= thedark &&
-            location ~= eastofcabin && snowshoes hasnt worn) {
+            if (location == northofcabin || location == southofcabin ||
+            location == westofcabin || location == truckspot || location
+            == backpacklocation || location == forest && snowshoes hasnt
+            worn) {
                 deadflag = 3;
             }
         ],
@@ -716,7 +720,7 @@ Object  flashlight "flashlight" backpack
             }
             give flashlight light;
           SwitchOff:
-            give lantern ~light;
+            give flashlight ~light;
         ],
   has   switchable;
 
@@ -868,12 +872,12 @@ Object  flashlight "flashlight" backpack
                 yourself at a console. The hallucination quickly 
                 fades.";
           15:
-            deadflag = 2;
-            print_ret 
+            print
                 "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.";
+                rush over to you.^";
+                PlayerTo(lobby1);
         }
     }
 ];
@@ -1076,16 +1080,28 @@ Object  westofcabin "West Of Cabin"
     return false;
 ];
 
+Object  cabin "cabin" mainroom
+  with  name 'cabin',
+        found_in mainroom bedroom office kitchenette southofcabin eastofcabin
+        northofcabin westofcabin,
+        before [;
+          Enter, Exit:
+            print_ret 
+                "You'll have to say which compass direction to go 
+                in.";
+        ],
+  has   scenery;
+
 Object  snowmobile "snowmobile" thedark
   with  name 'snowmobile',
         daemon [;
             snowmobile_location = random(14);
             if (location == forest && forest_location == snowmobile_location)
             {
-                deadflag = 2;
-                print_ret 
+                print
                     "A snowmobile approaches. The person says they 
-                    saw your light and came to rescue you.";
+                    saw your light and came to rescue you.^";
+                PlayerTo(lobby1);
             }
             return true;
         ],
@@ -1262,4 +1278,22 @@ Extend 'climb'
     * 'through' / 'out' / 'via' noun -> Climb;
 
 Extend 'go'
-    * 'through' / 'out' / 'via' noun -> Enter;
\ No newline at end of file
+    * 'through' / 'out' / 'via' noun -> Enter;
+
+Extend 'go' first
+    * 'out' / 'outside' -> VagueGo;
+
+Extend 'go' first
+    * 'out' / 'outside' / 'outside' 'of' noun -> VagueGo;
+
+Extend 'go' first
+    * 'in' / 'into' / 'inside' -> VagueGo;
+
+Extend 'go' first
+    * 'in' / 'into' / 'inside' / 'inside' 'of' noun -> VagueGo;
+
+Extend 'exit' first
+    * noun -> VagueGo;
+
+Extend 'leave' first
+    * noun -> VagueGo;
\ No newline at end of file