home · contact · privacy
Fix buggy healthy_addch().
[plomrogue] / server / io.py
index bb5d3ac13e7661feb6bfd3b7f2594038759c6772..ce3ee1a947eca4b9109cf4e9df51c57f41248028 100644 (file)
@@ -170,7 +170,7 @@ def save_world():
         for _id in sorted(world_db[category].keys()):
             string = string + id_string + " " + str(_id) + "\n"
             for key in sorted(world_db[category][_id].keys()):
-                if not key in special_keys:
+                if key.isupper() and not key in special_keys:
                     x = world_db[category][_id][key]
                     argument = quote_escape(x) if str == type(x) else str(x)
                     string = string + key + " " + argument + "\n"
@@ -185,7 +185,7 @@ def save_world():
             t = world_db["Things"][tid]
             for key in sorted(t.keys()):
                 if key not in {"T_CARRIES", "carried", "fovmap", "T_MEMMAP",
-                               "T_MEMTHING", "T_MEMDEPTHMAP"}:
+                               "T_MEMTHING", "T_MEMDEPTHMAP", "pos"}:
                     argument = t[key]
                     string += key + " " + (quote_escape(argument) if \
                             str == type(argument) else str(argument)) + "\n"
@@ -286,7 +286,7 @@ def obey_lines_in_file(path, name, do_record=False):
 
 def try_worldstate_update():
     """Write worldstate file if io_db["worldstate_updateable"] is set."""
-    if io_db["worldstate_updateable"]:
+    if world_db["WORLD_ACTIVE"] and io_db["worldstate_updateable"]:
         string = ""
         for entry in io_db["worldstate_write_order"]:
             if entry[1] == "world_int":