From: Christian Heller Date: Tue, 3 Mar 2015 01:13:10 +0000 (+0100) Subject: Server/py: Undummify command_worldactive() (90%), command_maplength(). X-Git-Tag: tce~431 X-Git-Url: https://plomlompom.com/repos/%7B%7Bdb.prefix%7D%7D/%7B%7B%20web_path%20%7D%7D/decks/%7B%7Bprefix%7D%7D/coming?a=commitdiff_plain;h=2abda4a2cf9ab42970b5fda00a433c7bcdb0f16e;p=plomrogue Server/py: Undummify command_worldactive() (90%), command_maplength(). --- diff --git a/plomrogue-server.py b/plomrogue-server.py index a1e3a44..b967946 100755 --- a/plomrogue-server.py +++ b/plomrogue-server.py @@ -486,15 +486,20 @@ def command_makeworld(seed_string): def command_maplength(maplength_string): - # DUMMY. + """Redefine map length. Invalidate map, therefore lose all things on it.""" set_world_inactive() - # TODO: remove map (is this necessary? no memory management trouble …) world_db["Things"] = {} setter(None, "MAP_LENGTH", 1, 256)(maplength_string) def command_worldactive(worldactive_string): - # DUMMY. + """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 map memories. + """ + # In original version, map existence was also tested (unnecessarily?). val = integer_test(worldactive_string, 0, 1) if val: if 0 != world_db["WORLD_ACTIVE"]: @@ -513,8 +518,7 @@ def command_worldactive(worldactive_string): if 0 == Thing: player_exists = True break - map_exists = "MAP" in world_db - if wait_exists and player_exists and map_exists: + if wait_exists and player_exists: # TODO: rebuild all things' FOVs, map memories world_db["WORLD_ACTIVE"] = 1