From: Christian Heller <c.heller@plomlompom.de>
Date: Mon, 31 Aug 2015 23:41:53 +0000 (+0200)
Subject: Re-insert map existence check in command_worldactive().
X-Git-Tag: tce~308
X-Git-Url: https://plomlompom.com/repos/%7B%7Bdb.prefix%7D%7D/static/%7B%7B%20web_path%20%7D%7D/%7B%7Bprefix%7D%7D/test.html?a=commitdiff_plain;h=6e92d2bab27353c21390abcf07eeee3d51fc64da;p=plomrogue

Re-insert map existence check in command_worldactive().
---

diff --git a/roguelike-server b/roguelike-server
index 7e59152..e723339 100755
--- a/roguelike-server
+++ b/roguelike-server
@@ -1285,10 +1285,9 @@ def command_worldactive(worldactive_string):
     """Toggle world_db["WORLD_ACTIVE"] if possible.
 
     An active world can always be set inactive. An inactive world can only be
-    set active with a "wait" ThingAction, and a player Thing (of ID 0). On
-    activation, rebuild all Things' FOVs, and the player's map memory.
+    set active with a "wait" ThingAction, and a player Thing (of ID 0), and a
+    map. On activation, rebuild all Things' FOVs, and the player's map memory.
     """
-    # In original version, map existence was also tested (unnecessarily?).
     val = integer_test(worldactive_string, 0, 1)
     if val:
         if 0 != world_db["WORLD_ACTIVE"]:
@@ -1307,7 +1306,7 @@ def command_worldactive(worldactive_string):
                 if 0 == Thing:
                     player_exists = True
                     break
-            if wait_exists and player_exists:
+            if wait_exists and player_exists and "MAP" in world_db:
                 for id in world_db["Things"]:
                     if world_db["Things"][id]["T_LIFEPOINTS"]:
                         build_fov_map(world_db["Things"][id])