X-Git-Url: https://plomlompom.com/repos/?a=blobdiff_plain;ds=sidebyside;f=server%2Fcommands.py;h=1ce6464a3527965e16da391940217f86cc9269c7;hb=65c57618b95b9111b07f8fbc4c38c99d942a272a;hp=f55400b4b8595f7113702a523952ba47a013934f;hpb=f6a1bf0aa76165c104d74fe8dfaf674d3e63b52d;p=plomrogue diff --git a/server/commands.py b/server/commands.py index f55400b..1ce6464 100644 --- a/server/commands.py +++ b/server/commands.py @@ -49,6 +49,9 @@ def command_thingshere(str_y, str_x): if None != y and None != x and y < length and x < length: pos = (y * world_db["MAP_LENGTH"]) + x strong_write(io_db["file_out"], "THINGS_HERE START\n") + terrain = chr(world_db["Things"][0]["T_MEMMAP"][pos]) + terrain_name = world_db["terrain_names"][terrain] + strong_write(io_db["file_out"], "terrain: " + terrain_name + "\n") if "v" == chr(world_db["Things"][0]["fovmap"][pos]): for id in [id for tid in sorted(list(world_db["ThingTypes"])) for id in world_db["Things"] @@ -115,17 +118,19 @@ def command_worldactive(worldactive_string): else: print("World already active.") elif 0 == world_db["WORLD_ACTIVE"]: - wait_exists = False for ThingAction in world_db["ThingActions"]: if "wait" == world_db["ThingActions"][ThingAction]["TA_NAME"]: - wait_exists = True break - player_exists = False + else: + print("Ignored: No wait action defined for world to activate.") + return for Thing in world_db["Things"]: if 0 == Thing: - player_exists = True break - if wait_exists and player_exists and world_db["MAP"]: + else: + print("Ignored: No player defined for world to activate.") + return + if world_db["MAP"]: for id in world_db["Things"]: if world_db["Things"][id]["T_LIFEPOINTS"]: build_fov_map(world_db["Things"][id]) @@ -136,7 +141,8 @@ def command_worldactive(worldactive_string): world_db["Things"][0]["fovmap"] = empty_fovmap world_db["WORLD_ACTIVE"] = 1 else: - print("Ignoring: Not all conditions for world activation met.") + print("Ignoring: No map defined for world to activate.") + return def command_tid(id_string): @@ -489,7 +495,7 @@ def play_use(str_arg): def play_move(str_arg): """Try "move" as player's T_COMMAND, str_arg as T_ARGUMENT / direction.""" if action_exists("move"): - from server.config.world_data import directions_db + from server.config.world_data import directions_db, symbols_passable t = world_db["Things"][0] if not str_arg in directions_db: print("Illegal move direction string.") @@ -499,7 +505,10 @@ def play_move(str_arg): move_result = mv_yx_in_dir_legal(chr(dir), t["T_POSY"], t["T_POSX"]) if 1 == move_result[0]: pos = (move_result[1] * world_db["MAP_LENGTH"]) + move_result[2] - if ord(".") == world_db["MAP"][pos]: + if ord("~") == world_db["MAP"][pos]: + log("You can't SWIM.") + return + if chr(world_db["MAP"][pos]) in symbols_passable: world_db["Things"][0]["T_ARGUMENT"] = dir set_command("move") return