From ef81977d5ecb68dd362b290268a921e4236850ff Mon Sep 17 00:00:00 2001 From: Christian Heller Date: Tue, 1 Sep 2015 02:57:26 +0200 Subject: [PATCH] Fix map invalidation in command_maplength(). --- roguelike-server | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/roguelike-server b/roguelike-server index 860cd1a..edd0579 100755 --- a/roguelike-server +++ b/roguelike-server @@ -1271,6 +1271,7 @@ def command_maplength(maplength_string): val = integer_test(maplength_string, 1, 256) if None != val: world_db["MAP_LENGTH"] = val + world_db["MAP"] = False set_world_inactive() world_db["Things"] = {} libpr.set_maplength(val) @@ -1301,7 +1302,7 @@ def command_worldactive(worldactive_string): if 0 == Thing: player_exists = True break - if wait_exists and player_exists and "MAP" in world_db: + if wait_exists and player_exists and world_db["MAP"]: for id in world_db["Things"]: if world_db["Things"][id]["T_LIFEPOINTS"]: build_fov_map(world_db["Things"][id]) @@ -1425,12 +1426,12 @@ def setter_map(maptype): val = valid_map_line(str_int, mapline) if None != val: length = world_db["MAP_LENGTH"] - if not "MAP" in world_db: + if not world_db["MAP"]: map = bytearray(b' ' * (length ** 2)) else: map = world_db["MAP"] map[val * length:(val * length) + length] = mapline.encode() - if not "MAP" in world_db: + if not world_db["MAP"]: world_db["MAP"] = map @test_Thing_id @@ -1623,6 +1624,7 @@ world_db = { "MAP_LENGTH": 64, "PLAYER_TYPE": 0, "WORLD_ACTIVE": 0, + "MAP": False, "ThingActions": {}, "ThingTypes": {}, "Things": {} -- 2.30.2